diff --git a/bindgen/3rdparty/BUILD.bazel b/bindgen/3rdparty/BUILD.bazel
index 0b2e2bd..0fe0429 100644
--- a/bindgen/3rdparty/BUILD.bazel
+++ b/bindgen/3rdparty/BUILD.bazel
@@ -21,6 +21,7 @@
         )],
     },
     cargo_lockfile = "Cargo.Bazel.lock",
+    generate_binaries = True,
     generate_build_scripts = False,
     mode = "remote",
     packages = {
diff --git a/bindgen/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel b/bindgen/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel
index e261207..bea588a 100644
--- a/bindgen/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel
+++ b/bindgen/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "aho_corasick",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.7.20",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__memchr-2.5.0//:memchr",
-        ],
-    }),
+        "@rules_rust_bindgen__memchr-2.5.0//:memchr",
+    ],
 )
diff --git a/bindgen/3rdparty/crates/BUILD.atty-0.2.14.bazel b/bindgen/3rdparty/crates/BUILD.atty-0.2.14.bazel
index 7afe816..6280144 100644
--- a/bindgen/3rdparty/crates/BUILD.atty-0.2.14.bazel
+++ b/bindgen/3rdparty/crates/BUILD.atty-0.2.14.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "atty",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.2.14",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@rules_rust_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
@@ -146,7 +107,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@rules_rust_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.autocfg-1.1.0.bazel b/bindgen/3rdparty/crates/BUILD.autocfg-1.1.0.bazel
index b3d18cc..dfc6b71 100644
--- a/bindgen/3rdparty/crates/BUILD.autocfg-1.1.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.autocfg-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "autocfg",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.bazel b/bindgen/3rdparty/crates/BUILD.bazel
index b9e3cfe..8e1f3fe 100644
--- a/bindgen/3rdparty/crates/BUILD.bazel
+++ b/bindgen/3rdparty/crates/BUILD.bazel
@@ -13,21 +13,15 @@
         "cargo-bazel.json",
         "crates.bzl",
         "defs.bzl",
-    ] + glob(
-        include = ["*.bazel"],
-        exclude = [],
-    ),
+    ] + glob(["*.bazel"]),
 )
 
 filegroup(
     name = "srcs",
-    srcs = glob(
-        include = [
-            "*.bazel",
-            "*.bzl",
-        ],
-        exclude = [],
-    ),
+    srcs = glob([
+        "*.bazel",
+        "*.bzl",
+    ]),
 )
 
 # Workspace Member Dependencies
diff --git a/bindgen/3rdparty/crates/BUILD.bindgen-0.60.1.bazel b/bindgen/3rdparty/crates/BUILD.bindgen-0.60.1.bazel
index 50b0ada..a079773 100644
--- a/bindgen/3rdparty/crates/BUILD.bindgen-0.60.1.bazel
+++ b/bindgen/3rdparty/crates/BUILD.bindgen-0.60.1.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_binary",
@@ -27,30 +21,17 @@
 
 rust_library(
     name = "bindgen",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "clap",
         "default",
@@ -62,29 +43,8 @@
         "which-rustfmt",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -93,54 +53,38 @@
     ],
     version = "0.60.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__bindgen-0.60.1//:build_script_build",
-            "@rules_rust_bindgen__bitflags-1.3.2//:bitflags",
-            "@rules_rust_bindgen__cexpr-0.6.0//:cexpr",
-            "@rules_rust_bindgen__clang-sys-1.4.0//:clang_sys",
-            "@rules_rust_bindgen__clap-3.2.23//:clap",
-            "@rules_rust_bindgen__env_logger-0.9.3//:env_logger",
-            "@rules_rust_bindgen__lazy_static-1.4.0//:lazy_static",
-            "@rules_rust_bindgen__lazycell-1.3.0//:lazycell",
-            "@rules_rust_bindgen__log-0.4.17//:log",
-            "@rules_rust_bindgen__peeking_take_while-0.1.2//:peeking_take_while",
-            "@rules_rust_bindgen__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_bindgen__quote-1.0.23//:quote",
-            "@rules_rust_bindgen__regex-1.7.0//:regex",
-            "@rules_rust_bindgen__rustc-hash-1.1.0//:rustc_hash",
-            "@rules_rust_bindgen__shlex-1.1.0//:shlex",
-            "@rules_rust_bindgen__which-4.3.0//:which",
-        ],
-    }),
+        "@rules_rust_bindgen__bindgen-0.60.1//:build_script_build",
+        "@rules_rust_bindgen__bitflags-1.3.2//:bitflags",
+        "@rules_rust_bindgen__cexpr-0.6.0//:cexpr",
+        "@rules_rust_bindgen__clang-sys-1.4.0//:clang_sys",
+        "@rules_rust_bindgen__clap-3.2.23//:clap",
+        "@rules_rust_bindgen__env_logger-0.9.3//:env_logger",
+        "@rules_rust_bindgen__lazy_static-1.4.0//:lazy_static",
+        "@rules_rust_bindgen__lazycell-1.3.0//:lazycell",
+        "@rules_rust_bindgen__log-0.4.17//:log",
+        "@rules_rust_bindgen__peeking_take_while-0.1.2//:peeking_take_while",
+        "@rules_rust_bindgen__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_bindgen__quote-1.0.23//:quote",
+        "@rules_rust_bindgen__regex-1.7.0//:regex",
+        "@rules_rust_bindgen__rustc-hash-1.1.0//:rustc_hash",
+        "@rules_rust_bindgen__shlex-1.1.0//:shlex",
+        "@rules_rust_bindgen__which-4.3.0//:which",
+    ],
 )
 
 rust_binary(
     name = "bindgen__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "clap",
         "default",
@@ -152,29 +96,8 @@
         "which-rustfmt",
     ],
     crate_root = "src/main.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -184,48 +107,28 @@
     version = "0.60.1",
     deps = [
         ":bindgen",
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__bindgen-0.60.1//:build_script_build",
-            "@rules_rust_bindgen__bitflags-1.3.2//:bitflags",
-            "@rules_rust_bindgen__cexpr-0.6.0//:cexpr",
-            "@rules_rust_bindgen__clang-sys-1.4.0//:clang_sys",
-            "@rules_rust_bindgen__clap-3.2.23//:clap",
-            "@rules_rust_bindgen__env_logger-0.9.3//:env_logger",
-            "@rules_rust_bindgen__lazy_static-1.4.0//:lazy_static",
-            "@rules_rust_bindgen__lazycell-1.3.0//:lazycell",
-            "@rules_rust_bindgen__log-0.4.17//:log",
-            "@rules_rust_bindgen__peeking_take_while-0.1.2//:peeking_take_while",
-            "@rules_rust_bindgen__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_bindgen__quote-1.0.23//:quote",
-            "@rules_rust_bindgen__regex-1.7.0//:regex",
-            "@rules_rust_bindgen__rustc-hash-1.1.0//:rustc_hash",
-            "@rules_rust_bindgen__shlex-1.1.0//:shlex",
-            "@rules_rust_bindgen__which-4.3.0//:which",
-        ],
-    }),
+        "@rules_rust_bindgen__bindgen-0.60.1//:build_script_build",
+        "@rules_rust_bindgen__bitflags-1.3.2//:bitflags",
+        "@rules_rust_bindgen__cexpr-0.6.0//:cexpr",
+        "@rules_rust_bindgen__clang-sys-1.4.0//:clang_sys",
+        "@rules_rust_bindgen__clap-3.2.23//:clap",
+        "@rules_rust_bindgen__env_logger-0.9.3//:env_logger",
+        "@rules_rust_bindgen__lazy_static-1.4.0//:lazy_static",
+        "@rules_rust_bindgen__lazycell-1.3.0//:lazycell",
+        "@rules_rust_bindgen__log-0.4.17//:log",
+        "@rules_rust_bindgen__peeking_take_while-0.1.2//:peeking_take_while",
+        "@rules_rust_bindgen__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_bindgen__quote-1.0.23//:quote",
+        "@rules_rust_bindgen__regex-1.7.0//:regex",
+        "@rules_rust_bindgen__rustc-hash-1.1.0//:rustc_hash",
+        "@rules_rust_bindgen__shlex-1.1.0//:shlex",
+        "@rules_rust_bindgen__which-4.3.0//:which",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "bindgen_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "clap",
         "default",
@@ -242,32 +145,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -276,28 +161,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.60.1",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "bindgen_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/bindgen/3rdparty/crates/BUILD.bitflags-1.3.2.bazel b/bindgen/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
index bfdc37b..3a6c3b0 100644
--- a/bindgen/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
+++ b/bindgen/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "bitflags",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "1.3.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.cexpr-0.6.0.bazel b/bindgen/3rdparty/crates/BUILD.cexpr-0.6.0.bazel
index a14a516..ed397a5 100644
--- a/bindgen/3rdparty/crates/BUILD.cexpr-0.6.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.cexpr-0.6.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cexpr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.6.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__nom-7.1.2//:nom",
-        ],
-    }),
+        "@rules_rust_bindgen__nom-7.1.2//:nom",
+    ],
 )
diff --git a/bindgen/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel b/bindgen/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
index 28cb083..eebbb20 100644
--- a/bindgen/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cfg_if",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.clang-sys-1.4.0.bazel b/bindgen/3rdparty/crates/BUILD.clang-sys-1.4.0.bazel
index ce15a15..9244bc3 100644
--- a/bindgen/3rdparty/crates/BUILD.clang-sys-1.4.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.clang-sys-1.4.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "clang_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "clang_3_5",
         "clang_3_6",
@@ -63,29 +44,8 @@
         "runtime",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -94,36 +54,16 @@
     ],
     version = "1.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__clang-sys-1.4.0//:build_script_build",
-            "@rules_rust_bindgen__glob-0.3.0//:glob",
-            "@rules_rust_bindgen__libc-0.2.139//:libc",
-            "@rules_rust_bindgen__libloading-0.7.4//:libloading",
-        ],
-    }),
+        "@rules_rust_bindgen__clang-sys-1.4.0//:build_script_build",
+        "@rules_rust_bindgen__glob-0.3.0//:glob",
+        "@rules_rust_bindgen__libc-0.2.139//:libc",
+        "@rules_rust_bindgen__libloading-0.7.4//:libloading",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "clang-sys_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "clang_3_5",
         "clang_3_6",
@@ -142,33 +82,15 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
     links = "clang",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -177,29 +99,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.4.0",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__glob-0.3.0//:glob",
-        ],
-    }),
+        "@rules_rust_bindgen__glob-0.3.0//:glob",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "clang-sys_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/bindgen/3rdparty/crates/BUILD.clap-3.2.23.bazel b/bindgen/3rdparty/crates/BUILD.clap-3.2.23.bazel
index 1735451..044cfef 100644
--- a/bindgen/3rdparty/crates/BUILD.clap-3.2.23.bazel
+++ b/bindgen/3rdparty/crates/BUILD.clap-3.2.23.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_binary",
@@ -22,30 +20,17 @@
 
 rust_library(
     name = "clap",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "atty",
         "color",
@@ -56,29 +41,8 @@
         "termcolor",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,45 +51,29 @@
     ],
     version = "3.2.23",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__atty-0.2.14//:atty",
-            "@rules_rust_bindgen__bitflags-1.3.2//:bitflags",
-            "@rules_rust_bindgen__clap_lex-0.2.4//:clap_lex",
-            "@rules_rust_bindgen__indexmap-1.9.2//:indexmap",
-            "@rules_rust_bindgen__strsim-0.10.0//:strsim",
-            "@rules_rust_bindgen__termcolor-1.1.3//:termcolor",
-            "@rules_rust_bindgen__textwrap-0.16.0//:textwrap",
-        ],
-    }),
+        "@rules_rust_bindgen__atty-0.2.14//:atty",
+        "@rules_rust_bindgen__bitflags-1.3.2//:bitflags",
+        "@rules_rust_bindgen__clap_lex-0.2.4//:clap_lex",
+        "@rules_rust_bindgen__indexmap-1.9.2//:indexmap",
+        "@rules_rust_bindgen__strsim-0.10.0//:strsim",
+        "@rules_rust_bindgen__termcolor-1.1.3//:termcolor",
+        "@rules_rust_bindgen__textwrap-0.16.0//:textwrap",
+    ],
 )
 
 rust_binary(
     name = "stdio-fixture__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "atty",
         "color",
@@ -136,29 +84,8 @@
         "termcolor",
     ],
     crate_root = "src/bin/stdio-fixture.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -168,15 +95,12 @@
     version = "3.2.23",
     deps = [
         ":clap",
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__atty-0.2.14//:atty",
-            "@rules_rust_bindgen__bitflags-1.3.2//:bitflags",
-            "@rules_rust_bindgen__clap_lex-0.2.4//:clap_lex",
-            "@rules_rust_bindgen__indexmap-1.9.2//:indexmap",
-            "@rules_rust_bindgen__strsim-0.10.0//:strsim",
-            "@rules_rust_bindgen__termcolor-1.1.3//:termcolor",
-            "@rules_rust_bindgen__textwrap-0.16.0//:textwrap",
-        ],
-    }),
+        "@rules_rust_bindgen__atty-0.2.14//:atty",
+        "@rules_rust_bindgen__bitflags-1.3.2//:bitflags",
+        "@rules_rust_bindgen__clap_lex-0.2.4//:clap_lex",
+        "@rules_rust_bindgen__indexmap-1.9.2//:indexmap",
+        "@rules_rust_bindgen__strsim-0.10.0//:strsim",
+        "@rules_rust_bindgen__termcolor-1.1.3//:termcolor",
+        "@rules_rust_bindgen__textwrap-0.16.0//:textwrap",
+    ],
 )
diff --git a/bindgen/3rdparty/crates/BUILD.clap_lex-0.2.4.bazel b/bindgen/3rdparty/crates/BUILD.clap_lex-0.2.4.bazel
index ff1ca0d..c7c3977 100644
--- a/bindgen/3rdparty/crates/BUILD.clap_lex-0.2.4.bazel
+++ b/bindgen/3rdparty/crates/BUILD.clap_lex-0.2.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "clap_lex",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.2.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__os_str_bytes-6.4.1//:os_str_bytes",
-        ],
-    }),
+        "@rules_rust_bindgen__os_str_bytes-6.4.1//:os_str_bytes",
+    ],
 )
diff --git a/bindgen/3rdparty/crates/BUILD.either-1.8.0.bazel b/bindgen/3rdparty/crates/BUILD.either-1.8.0.bazel
index 5313755..12c113f 100644
--- a/bindgen/3rdparty/crates/BUILD.either-1.8.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.either-1.8.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "either",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "use_std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "1.8.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.env_logger-0.9.3.bazel b/bindgen/3rdparty/crates/BUILD.env_logger-0.9.3.bazel
index 6bd5a27..b4fdefd 100644
--- a/bindgen/3rdparty/crates/BUILD.env_logger-0.9.3.bazel
+++ b/bindgen/3rdparty/crates/BUILD.env_logger-0.9.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "env_logger",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "atty",
         "default",
@@ -53,29 +38,8 @@
         "termcolor",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,13 +48,10 @@
     ],
     version = "0.9.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__atty-0.2.14//:atty",
-            "@rules_rust_bindgen__humantime-2.1.0//:humantime",
-            "@rules_rust_bindgen__log-0.4.17//:log",
-            "@rules_rust_bindgen__regex-1.7.0//:regex",
-            "@rules_rust_bindgen__termcolor-1.1.3//:termcolor",
-        ],
-    }),
+        "@rules_rust_bindgen__atty-0.2.14//:atty",
+        "@rules_rust_bindgen__humantime-2.1.0//:humantime",
+        "@rules_rust_bindgen__log-0.4.17//:log",
+        "@rules_rust_bindgen__regex-1.7.0//:regex",
+        "@rules_rust_bindgen__termcolor-1.1.3//:termcolor",
+    ],
 )
diff --git a/bindgen/3rdparty/crates/BUILD.glob-0.3.0.bazel b/bindgen/3rdparty/crates/BUILD.glob-0.3.0.bazel
index 61afb0f..f1f9acf 100644
--- a/bindgen/3rdparty/crates/BUILD.glob-0.3.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.glob-0.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "glob",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.hashbrown-0.12.3.bazel b/bindgen/3rdparty/crates/BUILD.hashbrown-0.12.3.bazel
index 3df8d23..2e4a036 100644
--- a/bindgen/3rdparty/crates/BUILD.hashbrown-0.12.3.bazel
+++ b/bindgen/3rdparty/crates/BUILD.hashbrown-0.12.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hashbrown",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "raw",
-    ],
+    ),
+    crate_features = ["raw"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.12.3",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.hermit-abi-0.1.19.bazel b/bindgen/3rdparty/crates/BUILD.hermit-abi-0.1.19.bazel
index 95085e0..0031155 100644
--- a/bindgen/3rdparty/crates/BUILD.hermit-abi-0.1.19.bazel
+++ b/bindgen/3rdparty/crates/BUILD.hermit-abi-0.1.19.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hermit_abi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.1.19",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__libc-0.2.139//:libc",
-        ],
-    }),
+        "@rules_rust_bindgen__libc-0.2.139//:libc",
+    ],
 )
diff --git a/bindgen/3rdparty/crates/BUILD.humantime-2.1.0.bazel b/bindgen/3rdparty/crates/BUILD.humantime-2.1.0.bazel
index 463b9be..be52cc1 100644
--- a/bindgen/3rdparty/crates/BUILD.humantime-2.1.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.humantime-2.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "humantime",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "2.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.indexmap-1.9.2.bazel b/bindgen/3rdparty/crates/BUILD.indexmap-1.9.2.bazel
index afe214f..3edcb15 100644
--- a/bindgen/3rdparty/crates/BUILD.indexmap-1.9.2.bazel
+++ b/bindgen/3rdparty/crates/BUILD.indexmap-1.9.2.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "indexmap",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,69 +43,29 @@
     ],
     version = "1.9.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__hashbrown-0.12.3//:hashbrown",
-            "@rules_rust_bindgen__indexmap-1.9.2//:build_script_build",
-        ],
-    }),
+        "@rules_rust_bindgen__hashbrown-0.12.3//:hashbrown",
+        "@rules_rust_bindgen__indexmap-1.9.2//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "indexmap_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["std"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,29 +74,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.9.2",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@rules_rust_bindgen__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "indexmap_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/bindgen/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel b/bindgen/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel
index aab99cc..a82e219 100644
--- a/bindgen/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "lazy_static",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.4.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.lazycell-1.3.0.bazel b/bindgen/3rdparty/crates/BUILD.lazycell-1.3.0.bazel
index 94b4e9c..eaa76b8 100644
--- a/bindgen/3rdparty/crates/BUILD.lazycell-1.3.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.lazycell-1.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "lazycell",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.3.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.libc-0.2.139.bazel b/bindgen/3rdparty/crates/BUILD.libc-0.2.139.bazel
index 9bf6fe6..2290870 100644
--- a/bindgen/3rdparty/crates/BUILD.libc-0.2.139.bazel
+++ b/bindgen/3rdparty/crates/BUILD.libc-0.2.139.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "libc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "0.2.139",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.libloading-0.7.4.bazel b/bindgen/3rdparty/crates/BUILD.libloading-0.7.4.bazel
index c508074..6cd4fab 100644
--- a/bindgen/3rdparty/crates/BUILD.libloading-0.7.4.bazel
+++ b/bindgen/3rdparty/crates/BUILD.libloading-0.7.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "libloading",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.7.4",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@rules_rust_bindgen__cfg-if-1.0.0//:cfg_if",  # cfg(unix)
         ],
@@ -146,7 +107,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@rules_rust_bindgen__cfg-if-1.0.0//:cfg_if",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.log-0.4.17.bazel b/bindgen/3rdparty/crates/BUILD.log-0.4.17.bazel
index 29d2138..440bebb 100644
--- a/bindgen/3rdparty/crates/BUILD.log-0.4.17.bazel
+++ b/bindgen/3rdparty/crates/BUILD.log-0.4.17.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,22 @@
 
 rust_library(
     name = "log",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
-
-        # User provided rustc_flags
         "--cfg=atomic_cas",
     ],
     tags = [
@@ -83,9 +45,6 @@
     ],
     version = "0.4.17",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__cfg-if-1.0.0//:cfg_if",
-        ],
-    }),
+        "@rules_rust_bindgen__cfg-if-1.0.0//:cfg_if",
+    ],
 )
diff --git a/bindgen/3rdparty/crates/BUILD.memchr-2.5.0.bazel b/bindgen/3rdparty/crates/BUILD.memchr-2.5.0.bazel
index 65937d3..a171c4a 100644
--- a/bindgen/3rdparty/crates/BUILD.memchr-2.5.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.memchr-2.5.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "memchr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "2.5.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.minimal-lexical-0.2.1.bazel b/bindgen/3rdparty/crates/BUILD.minimal-lexical-0.2.1.bazel
index 3c963f4..1a166d4 100644
--- a/bindgen/3rdparty/crates/BUILD.minimal-lexical-0.2.1.bazel
+++ b/bindgen/3rdparty/crates/BUILD.minimal-lexical-0.2.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "minimal_lexical",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.2.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.nom-7.1.2.bazel b/bindgen/3rdparty/crates/BUILD.nom-7.1.2.bazel
index 2af670c..dcb714f 100644
--- a/bindgen/3rdparty/crates/BUILD.nom-7.1.2.bazel
+++ b/bindgen/3rdparty/crates/BUILD.nom-7.1.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "nom",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,10 +45,7 @@
     ],
     version = "7.1.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__memchr-2.5.0//:memchr",
-            "@rules_rust_bindgen__minimal-lexical-0.2.1//:minimal_lexical",
-        ],
-    }),
+        "@rules_rust_bindgen__memchr-2.5.0//:memchr",
+        "@rules_rust_bindgen__minimal-lexical-0.2.1//:minimal_lexical",
+    ],
 )
diff --git a/bindgen/3rdparty/crates/BUILD.once_cell-1.17.0.bazel b/bindgen/3rdparty/crates/BUILD.once_cell-1.17.0.bazel
index b7334b0..afddaf4 100644
--- a/bindgen/3rdparty/crates/BUILD.once_cell-1.17.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.once_cell-1.17.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "once_cell",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
@@ -52,29 +37,8 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,4 @@
         "norustfmt",
     ],
     version = "1.17.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.os_str_bytes-6.4.1.bazel b/bindgen/3rdparty/crates/BUILD.os_str_bytes-6.4.1.bazel
index 2391d16..c441c1e 100644
--- a/bindgen/3rdparty/crates/BUILD.os_str_bytes-6.4.1.bazel
+++ b/bindgen/3rdparty/crates/BUILD.os_str_bytes-6.4.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "os_str_bytes",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "raw_os_str",
-    ],
+    ),
+    crate_features = ["raw_os_str"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "6.4.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.peeking_take_while-0.1.2.bazel b/bindgen/3rdparty/crates/BUILD.peeking_take_while-0.1.2.bazel
index 7f7545b..1dbbad2 100644
--- a/bindgen/3rdparty/crates/BUILD.peeking_take_while-0.1.2.bazel
+++ b/bindgen/3rdparty/crates/BUILD.peeking_take_while-0.1.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "peeking_take_while",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel b/bindgen/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel
index 5061835..f82997d 100644
--- a/bindgen/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel
+++ b/bindgen/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "proc_macro2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "1.0.49",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__unicode-ident-1.0.6//:unicode_ident",
-        ],
-    }),
+        "@rules_rust_bindgen__unicode-ident-1.0.6//:unicode_ident",
+    ],
 )
diff --git a/bindgen/3rdparty/crates/BUILD.quote-1.0.23.bazel b/bindgen/3rdparty/crates/BUILD.quote-1.0.23.bazel
index b36e62c..0041b8b 100644
--- a/bindgen/3rdparty/crates/BUILD.quote-1.0.23.bazel
+++ b/bindgen/3rdparty/crates/BUILD.quote-1.0.23.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "quote",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "1.0.23",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__proc-macro2-1.0.49//:proc_macro2",
-        ],
-    }),
+        "@rules_rust_bindgen__proc-macro2-1.0.49//:proc_macro2",
+    ],
 )
diff --git a/bindgen/3rdparty/crates/BUILD.regex-1.7.0.bazel b/bindgen/3rdparty/crates/BUILD.regex-1.7.0.bazel
index c1f8fd4..0ee8626 100644
--- a/bindgen/3rdparty/crates/BUILD.regex-1.7.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.regex-1.7.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "regex",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "aho-corasick",
         "memchr",
@@ -64,29 +49,8 @@
         "unicode-segment",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -95,11 +59,8 @@
     ],
     version = "1.7.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_bindgen__aho-corasick-0.7.20//:aho_corasick",
-            "@rules_rust_bindgen__memchr-2.5.0//:memchr",
-            "@rules_rust_bindgen__regex-syntax-0.6.28//:regex_syntax",
-        ],
-    }),
+        "@rules_rust_bindgen__aho-corasick-0.7.20//:aho_corasick",
+        "@rules_rust_bindgen__memchr-2.5.0//:memchr",
+        "@rules_rust_bindgen__regex-syntax-0.6.28//:regex_syntax",
+    ],
 )
diff --git a/bindgen/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel b/bindgen/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel
index 9d1d40b..05599d2 100644
--- a/bindgen/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel
+++ b/bindgen/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "regex_syntax",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "unicode",
         "unicode-age",
@@ -56,29 +41,8 @@
         "unicode-segment",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,9 +50,4 @@
         "norustfmt",
     ],
     version = "0.6.28",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.rustc-hash-1.1.0.bazel b/bindgen/3rdparty/crates/BUILD.rustc-hash-1.1.0.bazel
index 97dcca4..8c238c0 100644
--- a/bindgen/3rdparty/crates/BUILD.rustc-hash-1.1.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.rustc-hash-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "rustc_hash",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.shlex-1.1.0.bazel b/bindgen/3rdparty/crates/BUILD.shlex-1.1.0.bazel
index 66ba954..9b19c7c 100644
--- a/bindgen/3rdparty/crates/BUILD.shlex-1.1.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.shlex-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "shlex",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.strsim-0.10.0.bazel b/bindgen/3rdparty/crates/BUILD.strsim-0.10.0.bazel
index d761b1c..004ef6f 100644
--- a/bindgen/3rdparty/crates/BUILD.strsim-0.10.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.strsim-0.10.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "strsim",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.10.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.termcolor-1.1.3.bazel b/bindgen/3rdparty/crates/BUILD.termcolor-1.1.3.bazel
index eb21060..27458ec 100644
--- a/bindgen/3rdparty/crates/BUILD.termcolor-1.1.3.bazel
+++ b/bindgen/3rdparty/crates/BUILD.termcolor-1.1.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "termcolor",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "1.1.3",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@rules_rust_bindgen__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@rules_rust_bindgen__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.textwrap-0.16.0.bazel b/bindgen/3rdparty/crates/BUILD.textwrap-0.16.0.bazel
index f2bebfa..1b74bc5 100644
--- a/bindgen/3rdparty/crates/BUILD.textwrap-0.16.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.textwrap-0.16.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "textwrap",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.16.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel b/bindgen/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel
index e185931..4905892 100644
--- a/bindgen/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel
+++ b/bindgen/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "unicode_ident",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.6",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.which-4.3.0.bazel b/bindgen/3rdparty/crates/BUILD.which-4.3.0.bazel
index cbe8da6..05789ee 100644
--- a/bindgen/3rdparty/crates/BUILD.which-4.3.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.which-4.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "which",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,25 +41,18 @@
     ],
     version = "4.3.0",
     deps = [
+        "@rules_rust_bindgen__either-1.8.0//:either",
+        "@rules_rust_bindgen__libc-0.2.139//:libc",
     ] + select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@rules_rust_bindgen__either-1.8.0//:either",  # common dependency
-            "@rules_rust_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_bindgen__once_cell-1.17.0//:once_cell",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@rules_rust_bindgen__either-1.8.0//:either",  # common dependency
-            "@rules_rust_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_bindgen__once_cell-1.17.0//:once_cell",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@rules_rust_bindgen__either-1.8.0//:either",  # common dependency
-            "@rules_rust_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_bindgen__once_cell-1.17.0//:once_cell",  # cfg(windows)
         ],
-        "//conditions:default": [
-            "@rules_rust_bindgen__either-1.8.0//:either",
-            "@rules_rust_bindgen__libc-0.2.139//:libc",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.winapi-0.3.9.bazel b/bindgen/3rdparty/crates/BUILD.winapi-0.3.9.bazel
index 1edba22..259cee5 100644
--- a/bindgen/3rdparty/crates/BUILD.winapi-0.3.9.bazel
+++ b/bindgen/3rdparty/crates/BUILD.winapi-0.3.9.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "winapi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "consoleapi",
         "errhandlingapi",
@@ -60,29 +45,8 @@
         "winnt",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -90,9 +54,4 @@
         "norustfmt",
     ],
     version = "0.3.9",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel b/bindgen/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
index a6ddcee..364fbc7 100644
--- a/bindgen/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "winapi_i686_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.4.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel b/bindgen/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel
index 4e994c8..01b08ab 100644
--- a/bindgen/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel
+++ b/bindgen/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "winapi_util",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.1.5",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@rules_rust_bindgen__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@rules_rust_bindgen__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/bindgen/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel b/bindgen/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
index 4e8b7fb..3dc290e 100644
--- a/bindgen/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
+++ b/bindgen/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "winapi_x86_64_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.4.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.ahash-0.7.6.bazel b/crate_universe/3rdparty/crates/BUILD.ahash-0.7.6.bazel
index 96b7d10..5386440 100644
--- a/crate_universe/3rdparty/crates/BUILD.ahash-0.7.6.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.ahash-0.7.6.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "ahash",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,194 +42,130 @@
     ],
     version = "0.7.6",
     deps = [
+        "@cui__ahash-0.7.6//:build_script_build",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:riscv32imc-unknown-none-elf": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:riscv64gc-unknown-none-elf": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:wasm32-unknown-unknown": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@cui__ahash-0.7.6//:build_script_build",  # common dependency
             "@cui__getrandom-0.2.8//:getrandom",  # cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
             "@cui__once_cell-1.17.0//:once_cell",  # cfg(not(all(target_arch = "arm", target_os = "none")))
         ],
-        "//conditions:default": [
-            "@cui__ahash-0.7.6//:build_script_build",
-        ],
+        "//conditions:default": [],
     }),
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "ahash_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -280,29 +174,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.7.6",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__version_check-0.9.4//:version_check",
-        ],
-    }),
+        "@cui__version_check-0.9.4//:version_check",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "ahash_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel b/crate_universe/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel
index fc1f05c..1a19f6b 100644
--- a/crate_universe/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "aho_corasick",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.7.20",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__memchr-2.5.0//:memchr",
-        ],
-    }),
+        "@cui__memchr-2.5.0//:memchr",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.android_system_properties-0.1.5.bazel b/crate_universe/3rdparty/crates/BUILD.android_system_properties-0.1.5.bazel
index b3b7e1a..0b3a496 100644
--- a/crate_universe/3rdparty/crates/BUILD.android_system_properties-0.1.5.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.android_system_properties-0.1.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "android_system_properties",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.1.5",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__libc-0.2.139//:libc",
-        ],
-    }),
+        "@cui__libc-0.2.139//:libc",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.anyhow-1.0.68.bazel b/crate_universe/3rdparty/crates/BUILD.anyhow-1.0.68.bazel
index ec7b0a9..664d24c 100644
--- a/crate_universe/3rdparty/crates/BUILD.anyhow-1.0.68.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.anyhow-1.0.68.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "anyhow",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "1.0.68",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__anyhow-1.0.68//:build_script_build",
-        ],
-    }),
+        "@cui__anyhow-1.0.68//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "anyhow_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.68",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "anyhow_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.autocfg-1.1.0.bazel b/crate_universe/3rdparty/crates/BUILD.autocfg-1.1.0.bazel
index 12104f8..67faa0d 100644
--- a/crate_universe/3rdparty/crates/BUILD.autocfg-1.1.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.autocfg-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "autocfg",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.bazel b/crate_universe/3rdparty/crates/BUILD.bazel
index 70308c5..9a82234 100644
--- a/crate_universe/3rdparty/crates/BUILD.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.bazel
@@ -13,21 +13,15 @@
         "cargo-bazel.json",
         "crates.bzl",
         "defs.bzl",
-    ] + glob(
-        include = ["*.bazel"],
-        exclude = [],
-    ),
+    ] + glob(["*.bazel"]),
 )
 
 filegroup(
     name = "srcs",
-    srcs = glob(
-        include = [
-            "*.bazel",
-            "*.bzl",
-        ],
-        exclude = [],
-    ),
+    srcs = glob([
+        "*.bazel",
+        "*.bzl",
+    ]),
 )
 
 # Workspace Member Dependencies
diff --git a/crate_universe/3rdparty/crates/BUILD.bitflags-1.3.2.bazel b/crate_universe/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
index 9b0162f..466972d 100644
--- a/crate_universe/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "bitflags",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "1.3.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.block-buffer-0.10.3.bazel b/crate_universe/3rdparty/crates/BUILD.block-buffer-0.10.3.bazel
index 6e06fa2..5a30947 100644
--- a/crate_universe/3rdparty/crates/BUILD.block-buffer-0.10.3.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.block-buffer-0.10.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "block_buffer",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.10.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__generic-array-0.14.6//:generic_array",
-        ],
-    }),
+        "@cui__generic-array-0.14.6//:generic_array",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.bstr-0.2.17.bazel b/crate_universe/3rdparty/crates/BUILD.bstr-0.2.17.bazel
index 992745f..b6cc033 100644
--- a/crate_universe/3rdparty/crates/BUILD.bstr-0.2.17.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.bstr-0.2.17.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "bstr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.2.17",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__memchr-2.5.0//:memchr",
-        ],
-    }),
+        "@cui__memchr-2.5.0//:memchr",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.bumpalo-3.11.1.bazel b/crate_universe/3rdparty/crates/BUILD.bumpalo-3.11.1.bazel
index dc39a09..6c24cae 100644
--- a/crate_universe/3rdparty/crates/BUILD.bumpalo-3.11.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.bumpalo-3.11.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "bumpalo",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "3.11.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.camino-1.1.1.bazel b/crate_universe/3rdparty/crates/BUILD.camino-1.1.1.bazel
index 05933fc..4d2d14b 100644
--- a/crate_universe/3rdparty/crates/BUILD.camino-1.1.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.camino-1.1.1.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "camino",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "serde",
         "serde1",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "1.1.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__camino-1.1.1//:build_script_build",
-            "@cui__serde-1.0.152//:serde",
-        ],
-    }),
+        "@cui__camino-1.1.1//:build_script_build",
+        "@cui__serde-1.0.152//:serde",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "camino_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "serde",
         "serde1",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.1.1",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "camino_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.cargo-lock-8.0.3.bazel b/crate_universe/3rdparty/crates/BUILD.cargo-lock-8.0.3.bazel
index 2115853..46c74e6 100644
--- a/crate_universe/3rdparty/crates/BUILD.cargo-lock-8.0.3.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.cargo-lock-8.0.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cargo_lock",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,12 +41,9 @@
     ],
     version = "8.0.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__semver-1.0.16//:semver",
-            "@cui__serde-1.0.152//:serde",
-            "@cui__toml-0.5.10//:toml",
-            "@cui__url-2.3.1//:url",
-        ],
-    }),
+        "@cui__semver-1.0.16//:semver",
+        "@cui__serde-1.0.152//:serde",
+        "@cui__toml-0.5.10//:toml",
+        "@cui__url-2.3.1//:url",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.cargo-platform-0.1.2.bazel b/crate_universe/3rdparty/crates/BUILD.cargo-platform-0.1.2.bazel
index b823df9..4e2e547 100644
--- a/crate_universe/3rdparty/crates/BUILD.cargo-platform-0.1.2.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.cargo-platform-0.1.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cargo_platform",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.1.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__serde-1.0.152//:serde",
-        ],
-    }),
+        "@cui__serde-1.0.152//:serde",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.cargo_metadata-0.15.2.bazel b/crate_universe/3rdparty/crates/BUILD.cargo_metadata-0.15.2.bazel
index c3f25f4..8934656 100644
--- a/crate_universe/3rdparty/crates/BUILD.cargo_metadata-0.15.2.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.cargo_metadata-0.15.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "cargo_metadata",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,14 +42,11 @@
     ],
     version = "0.15.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__camino-1.1.1//:camino",
-            "@cui__cargo-platform-0.1.2//:cargo_platform",
-            "@cui__semver-1.0.16//:semver",
-            "@cui__serde-1.0.152//:serde",
-            "@cui__serde_json-1.0.91//:serde_json",
-            "@cui__thiserror-1.0.38//:thiserror",
-        ],
-    }),
+        "@cui__camino-1.1.1//:camino",
+        "@cui__cargo-platform-0.1.2//:cargo_platform",
+        "@cui__semver-1.0.16//:semver",
+        "@cui__serde-1.0.152//:serde",
+        "@cui__serde_json-1.0.91//:serde_json",
+        "@cui__thiserror-1.0.38//:thiserror",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.cargo_toml-0.13.3.bazel b/crate_universe/3rdparty/crates/BUILD.cargo_toml-0.13.3.bazel
index 2c9cddb..4ed9ef4 100644
--- a/crate_universe/3rdparty/crates/BUILD.cargo_toml-0.13.3.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.cargo_toml-0.13.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cargo_toml",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/cargo_toml.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.13.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__serde-1.0.152//:serde",
-            "@cui__toml-0.5.10//:toml",
-        ],
-    }),
+        "@cui__serde-1.0.152//:serde",
+        "@cui__toml-0.5.10//:toml",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.cc-1.0.78.bazel b/crate_universe/3rdparty/crates/BUILD.cc-1.0.78.bazel
index d3b2b8c..2ad63c7 100644
--- a/crate_universe/3rdparty/crates/BUILD.cc-1.0.78.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.cc-1.0.78.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "cc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "jobserver",
         "parallel",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "1.0.78",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__jobserver-0.1.25//:jobserver",
-        ],
-    }),
+        "@cui__jobserver-0.1.25//:jobserver",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.cfg-expr-0.12.0.bazel b/crate_universe/3rdparty/crates/BUILD.cfg-expr-0.12.0.bazel
index cdcefb6..7358d26 100644
--- a/crate_universe/3rdparty/crates/BUILD.cfg-expr-0.12.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.cfg-expr-0.12.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "cfg_expr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.12.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__smallvec-1.10.0//:smallvec",
-        ],
-    }),
+        "@cui__smallvec-1.10.0//:smallvec",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel b/crate_universe/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
index 93b006c..b5ee1f4 100644
--- a/crate_universe/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cfg_if",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.chrono-0.4.23.bazel b/crate_universe/3rdparty/crates/BUILD.chrono-0.4.23.bazel
index e762a4e..6bd595e 100644
--- a/crate_universe/3rdparty/crates/BUILD.chrono-0.4.23.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.chrono-0.4.23.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "chrono",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "clock",
         "iana-time-zone",
@@ -52,29 +37,8 @@
         "winapi",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -83,29 +47,19 @@
     ],
     version = "0.4.23",
     deps = [
+        "@cui__iana-time-zone-0.1.53//:iana_time_zone",
+        "@cui__num-integer-0.1.45//:num_integer",
+        "@cui__num-traits-0.2.15//:num_traits",
     ] + select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@cui__iana-time-zone-0.1.53//:iana_time_zone",  # common dependency
-            "@cui__num-integer-0.1.45//:num_integer",  # common dependency
-            "@cui__num-traits-0.2.15//:num_traits",  # common dependency
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@cui__iana-time-zone-0.1.53//:iana_time_zone",  # common dependency
-            "@cui__num-integer-0.1.45//:num_integer",  # common dependency
-            "@cui__num-traits-0.2.15//:num_traits",  # common dependency
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@cui__iana-time-zone-0.1.53//:iana_time_zone",  # common dependency
-            "@cui__num-integer-0.1.45//:num_integer",  # common dependency
-            "@cui__num-traits-0.2.15//:num_traits",  # common dependency
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
-        "//conditions:default": [
-            "@cui__iana-time-zone-0.1.53//:iana_time_zone",
-            "@cui__num-integer-0.1.45//:num_integer",
-            "@cui__num-traits-0.2.15//:num_traits",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.chrono-tz-0.6.3.bazel b/crate_universe/3rdparty/crates/BUILD.chrono-tz-0.6.3.bazel
index fde4932..6e6cc24 100644
--- a/crate_universe/3rdparty/crates/BUILD.chrono-tz-0.6.3.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.chrono-tz-0.6.3.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "chrono_tz",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,35 +46,15 @@
     ],
     version = "0.6.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__chrono-0.4.23//:chrono",
-            "@cui__chrono-tz-0.6.3//:build_script_build",
-            "@cui__phf-0.11.1//:phf",
-        ],
-    }),
+        "@cui__chrono-0.4.23//:chrono",
+        "@cui__chrono-tz-0.6.3//:build_script_build",
+        "@cui__phf-0.11.1//:phf",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "chrono-tz_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -125,32 +65,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -159,29 +81,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.6.3",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__chrono-tz-build-0.0.3//:chrono_tz_build",
-        ],
-    }),
+        "@cui__chrono-tz-build-0.0.3//:chrono_tz_build",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "chrono-tz_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.chrono-tz-build-0.0.3.bazel b/crate_universe/3rdparty/crates/BUILD.chrono-tz-build-0.0.3.bazel
index 15fb8ad..44724ea 100644
--- a/crate_universe/3rdparty/crates/BUILD.chrono-tz-build-0.0.3.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.chrono-tz-build-0.0.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "chrono_tz_build",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.0.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__parse-zoneinfo-0.3.0//:parse_zoneinfo",
-            "@cui__phf-0.11.1//:phf",
-            "@cui__phf_codegen-0.11.1//:phf_codegen",
-        ],
-    }),
+        "@cui__parse-zoneinfo-0.3.0//:parse_zoneinfo",
+        "@cui__phf-0.11.1//:phf",
+        "@cui__phf_codegen-0.11.1//:phf_codegen",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.clap-4.0.32.bazel b/crate_universe/3rdparty/crates/BUILD.clap-4.0.32.bazel
index 15176a6..8cd466b 100644
--- a/crate_universe/3rdparty/crates/BUILD.clap-4.0.32.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.clap-4.0.32.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "clap",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "color",
         "default",
@@ -57,30 +42,11 @@
         "usage",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__clap_derive-4.0.21//:clap_derive",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@cui__clap_derive-4.0.21//:clap_derive",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -89,14 +55,11 @@
     ],
     version = "4.0.32",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__bitflags-1.3.2//:bitflags",
-            "@cui__clap_lex-0.3.0//:clap_lex",
-            "@cui__is-terminal-0.4.2//:is_terminal",
-            "@cui__once_cell-1.17.0//:once_cell",
-            "@cui__strsim-0.10.0//:strsim",
-            "@cui__termcolor-1.1.3//:termcolor",
-        ],
-    }),
+        "@cui__bitflags-1.3.2//:bitflags",
+        "@cui__clap_lex-0.3.0//:clap_lex",
+        "@cui__is-terminal-0.4.2//:is_terminal",
+        "@cui__once_cell-1.17.0//:once_cell",
+        "@cui__strsim-0.10.0//:strsim",
+        "@cui__termcolor-1.1.3//:termcolor",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.clap_derive-4.0.21.bazel b/crate_universe/3rdparty/crates/BUILD.clap_derive-4.0.21.bazel
index 469df51..234a352 100644
--- a/crate_universe/3rdparty/crates/BUILD.clap_derive-4.0.21.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.clap_derive-4.0.21.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,57 +19,21 @@
 
 rust_proc_macro(
     name = "clap_derive",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,13 +42,10 @@
     ],
     version = "4.0.21",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__heck-0.4.0//:heck",
-            "@cui__proc-macro-error-1.0.4//:proc_macro_error",
-            "@cui__proc-macro2-1.0.49//:proc_macro2",
-            "@cui__quote-1.0.23//:quote",
-            "@cui__syn-1.0.107//:syn",
-        ],
-    }),
+        "@cui__heck-0.4.0//:heck",
+        "@cui__proc-macro-error-1.0.4//:proc_macro_error",
+        "@cui__proc-macro2-1.0.49//:proc_macro2",
+        "@cui__quote-1.0.23//:quote",
+        "@cui__syn-1.0.107//:syn",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.clap_lex-0.3.0.bazel b/crate_universe/3rdparty/crates/BUILD.clap_lex-0.3.0.bazel
index 793d203..9aa3e26 100644
--- a/crate_universe/3rdparty/crates/BUILD.clap_lex-0.3.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.clap_lex-0.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "clap_lex",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.3.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__os_str_bytes-6.4.1//:os_str_bytes",
-        ],
-    }),
+        "@cui__os_str_bytes-6.4.1//:os_str_bytes",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.codespan-reporting-0.11.1.bazel b/crate_universe/3rdparty/crates/BUILD.codespan-reporting-0.11.1.bazel
index 4ed6a52..f089bd8 100644
--- a/crate_universe/3rdparty/crates/BUILD.codespan-reporting-0.11.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.codespan-reporting-0.11.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "codespan_reporting",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.11.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__termcolor-1.1.3//:termcolor",
-            "@cui__unicode-width-0.1.10//:unicode_width",
-        ],
-    }),
+        "@cui__termcolor-1.1.3//:termcolor",
+        "@cui__unicode-width-0.1.10//:unicode_width",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.core-foundation-sys-0.8.3.bazel b/crate_universe/3rdparty/crates/BUILD.core-foundation-sys-0.8.3.bazel
index d3821bb..875ff6a 100644
--- a/crate_universe/3rdparty/crates/BUILD.core-foundation-sys-0.8.3.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.core-foundation-sys-0.8.3.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "core_foundation_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.8.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__core-foundation-sys-0.8.3//:build_script_build",
-        ],
-    }),
+        "@cui__core-foundation-sys-0.8.3//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "core-foundation-sys_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.8.3",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "core-foundation-sys_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.cpufeatures-0.2.5.bazel b/crate_universe/3rdparty/crates/BUILD.cpufeatures-0.2.5.bazel
index 8f22739..c97f155 100644
--- a/crate_universe/3rdparty/crates/BUILD.cpufeatures-0.2.5.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.cpufeatures-0.2.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cpufeatures",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.2.5",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@cui__libc-0.2.139//:libc",  # aarch64-apple-darwin
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
             "@cui__libc-0.2.139//:libc",  # cfg(all(target_arch = "aarch64", target_os = "linux"))
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.crates-index-0.18.11.bazel b/crate_universe/3rdparty/crates/BUILD.crates-index-0.18.11.bazel
index 3cba3c8..c0115fb 100644
--- a/crate_universe/3rdparty/crates/BUILD.crates-index-0.18.11.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.crates-index-0.18.11.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,23 @@
 
 rust_library(
     name = "crates_index",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__serde_derive-1.0.152//:serde_derive",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@cui__serde_derive-1.0.152//:serde_derive",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,19 +44,16 @@
     ],
     version = "0.18.11",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__git2-0.15.0//:git2",
-            "@cui__hex-0.4.3//:hex",
-            "@cui__home-0.5.4//:home",
-            "@cui__memchr-2.5.0//:memchr",
-            "@cui__num_cpus-1.15.0//:num_cpus",
-            "@cui__rustc-hash-1.1.0//:rustc_hash",
-            "@cui__semver-1.0.16//:semver",
-            "@cui__serde-1.0.152//:serde",
-            "@cui__serde_json-1.0.91//:serde_json",
-            "@cui__smartstring-1.0.1//:smartstring",
-            "@cui__toml-0.5.10//:toml",
-        ],
-    }),
+        "@cui__git2-0.15.0//:git2",
+        "@cui__hex-0.4.3//:hex",
+        "@cui__home-0.5.4//:home",
+        "@cui__memchr-2.5.0//:memchr",
+        "@cui__num_cpus-1.15.0//:num_cpus",
+        "@cui__rustc-hash-1.1.0//:rustc_hash",
+        "@cui__semver-1.0.16//:semver",
+        "@cui__serde-1.0.152//:serde",
+        "@cui__serde_json-1.0.91//:serde_json",
+        "@cui__smartstring-1.0.1//:smartstring",
+        "@cui__toml-0.5.10//:toml",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.crossbeam-utils-0.8.14.bazel b/crate_universe/3rdparty/crates/BUILD.crossbeam-utils-0.8.14.bazel
index 6ea98d8..f6cf521 100644
--- a/crate_universe/3rdparty/crates/BUILD.crossbeam-utils-0.8.14.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.crossbeam-utils-0.8.14.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "crossbeam_utils",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "0.8.14",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__cfg-if-1.0.0//:cfg_if",
-            "@cui__crossbeam-utils-0.8.14//:build_script_build",
-        ],
-    }),
+        "@cui__cfg-if-1.0.0//:cfg_if",
+        "@cui__crossbeam-utils-0.8.14//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "crossbeam-utils_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.8.14",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "crossbeam-utils_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.crypto-common-0.1.6.bazel b/crate_universe/3rdparty/crates/BUILD.crypto-common-0.1.6.bazel
index bfbc915..c62f000 100644
--- a/crate_universe/3rdparty/crates/BUILD.crypto-common-0.1.6.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.crypto-common-0.1.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "crypto_common",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,10 +42,7 @@
     ],
     version = "0.1.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__generic-array-0.14.6//:generic_array",
-            "@cui__typenum-1.16.0//:typenum",
-        ],
-    }),
+        "@cui__generic-array-0.14.6//:generic_array",
+        "@cui__typenum-1.16.0//:typenum",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.cxx-1.0.85.bazel b/crate_universe/3rdparty/crates/BUILD.cxx-1.0.85.bazel
index 565ff28..c215d25 100644
--- a/crate_universe/3rdparty/crates/BUILD.cxx-1.0.85.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.cxx-1.0.85.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,60 +20,28 @@
 
 rust_library(
     name = "cxx",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__cxxbridge-macro-1.0.85//:cxxbridge_macro",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@cui__cxxbridge-macro-1.0.85//:cxxbridge_macro",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -88,34 +50,14 @@
     ],
     version = "1.0.85",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__cxx-1.0.85//:build_script_build",
-            "@cui__link-cplusplus-1.0.8//:link_cplusplus",
-        ],
-    }),
+        "@cui__cxx-1.0.85//:build_script_build",
+        "@cui__link-cplusplus-1.0.8//:link_cplusplus",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "cxx_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "alloc",
         "default",
@@ -127,33 +69,15 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
     links = "cxxbridge1",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -162,30 +86,16 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.85",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__cc-1.0.78//:cc",
-            "@cui__cxxbridge-flags-1.0.85//:cxxbridge_flags",
-        ],
-    }),
+        "@cui__cc-1.0.78//:cc",
+        "@cui__cxxbridge-flags-1.0.85//:cxxbridge_flags",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "cxx_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.cxx-build-1.0.85.bazel b/crate_universe/3rdparty/crates/BUILD.cxx-build-1.0.85.bazel
index 66e8fcb..42fcb9f 100644
--- a/crate_universe/3rdparty/crates/BUILD.cxx-build-1.0.85.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.cxx-build-1.0.85.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cxx_build",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,15 +41,12 @@
     ],
     version = "1.0.85",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__cc-1.0.78//:cc",
-            "@cui__codespan-reporting-0.11.1//:codespan_reporting",
-            "@cui__once_cell-1.17.0//:once_cell",
-            "@cui__proc-macro2-1.0.49//:proc_macro2",
-            "@cui__quote-1.0.23//:quote",
-            "@cui__scratch-1.0.3//:scratch",
-            "@cui__syn-1.0.107//:syn",
-        ],
-    }),
+        "@cui__cc-1.0.78//:cc",
+        "@cui__codespan-reporting-0.11.1//:codespan_reporting",
+        "@cui__once_cell-1.17.0//:once_cell",
+        "@cui__proc-macro2-1.0.49//:proc_macro2",
+        "@cui__quote-1.0.23//:quote",
+        "@cui__scratch-1.0.3//:scratch",
+        "@cui__syn-1.0.107//:syn",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.cxxbridge-flags-1.0.85.bazel b/crate_universe/3rdparty/crates/BUILD.cxxbridge-flags-1.0.85.bazel
index 95c182d..4c3362e 100644
--- a/crate_universe/3rdparty/crates/BUILD.cxxbridge-flags-1.0.85.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.cxxbridge-flags-1.0.85.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "cxxbridge_flags",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "1.0.85",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.cxxbridge-macro-1.0.85.bazel b/crate_universe/3rdparty/crates/BUILD.cxxbridge-macro-1.0.85.bazel
index fc173ad..c3f25f1 100644
--- a/crate_universe/3rdparty/crates/BUILD.cxxbridge-macro-1.0.85.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.cxxbridge-macro-1.0.85.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,56 +19,20 @@
 
 rust_proc_macro(
     name = "cxxbridge_macro",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "1.0.85",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__proc-macro2-1.0.49//:proc_macro2",
-            "@cui__quote-1.0.23//:quote",
-            "@cui__syn-1.0.107//:syn",
-        ],
-    }),
+        "@cui__proc-macro2-1.0.49//:proc_macro2",
+        "@cui__quote-1.0.23//:quote",
+        "@cui__syn-1.0.107//:syn",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.deunicode-0.4.3.bazel b/crate_universe/3rdparty/crates/BUILD.deunicode-0.4.3.bazel
index da86606..d3174bc 100644
--- a/crate_universe/3rdparty/crates/BUILD.deunicode-0.4.3.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.deunicode-0.4.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "deunicode",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.4.3",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.digest-0.10.6.bazel b/crate_universe/3rdparty/crates/BUILD.digest-0.10.6.bazel
index de48078..d1dcbf3 100644
--- a/crate_universe/3rdparty/crates/BUILD.digest-0.10.6.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.digest-0.10.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "digest",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "block-buffer",
@@ -53,29 +38,8 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,10 +48,7 @@
     ],
     version = "0.10.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__block-buffer-0.10.3//:block_buffer",
-            "@cui__crypto-common-0.1.6//:crypto_common",
-        ],
-    }),
+        "@cui__block-buffer-0.10.3//:block_buffer",
+        "@cui__crypto-common-0.1.6//:crypto_common",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.errno-0.2.8.bazel b/crate_universe/3rdparty/crates/BUILD.errno-0.2.8.bazel
index 66c4d16..80301eb 100644
--- a/crate_universe/3rdparty/crates/BUILD.errno-0.2.8.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.errno-0.2.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "errno",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.2.8",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
@@ -149,7 +110,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.errno-dragonfly-0.1.2.bazel b/crate_universe/3rdparty/crates/BUILD.errno-dragonfly-0.1.2.bazel
index cf06ac2..8f2a142 100644
--- a/crate_universe/3rdparty/crates/BUILD.errno-dragonfly-0.1.2.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.errno-dragonfly-0.1.2.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "errno_dragonfly",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.1.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__errno-dragonfly-0.1.2//:build_script_build",
-            "@cui__libc-0.2.139//:libc",
-        ],
-    }),
+        "@cui__errno-dragonfly-0.1.2//:build_script_build",
+        "@cui__libc-0.2.139//:libc",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "errno-dragonfly_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,29 +72,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.1.2",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__cc-1.0.78//:cc",
-        ],
-    }),
+        "@cui__cc-1.0.78//:cc",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "errno-dragonfly_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.fastrand-1.8.0.bazel b/crate_universe/3rdparty/crates/BUILD.fastrand-1.8.0.bazel
index 1382cef..4d5df3c 100644
--- a/crate_universe/3rdparty/crates/BUILD.fastrand-1.8.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.fastrand-1.8.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "fastrand",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,15 +40,13 @@
         "norustfmt",
     ],
     version = "1.8.0",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:wasm32-unknown-unknown": [
             "@cui__instant-0.1.12//:instant",  # cfg(target_arch = "wasm32")
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
             "@cui__instant-0.1.12//:instant",  # cfg(target_arch = "wasm32")
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.fnv-1.0.7.bazel b/crate_universe/3rdparty/crates/BUILD.fnv-1.0.7.bazel
index 733abff..dd235e4 100644
--- a/crate_universe/3rdparty/crates/BUILD.fnv-1.0.7.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.fnv-1.0.7.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "fnv",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "1.0.7",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.form_urlencoded-1.1.0.bazel b/crate_universe/3rdparty/crates/BUILD.form_urlencoded-1.1.0.bazel
index a0ba0f6..954fb5e 100644
--- a/crate_universe/3rdparty/crates/BUILD.form_urlencoded-1.1.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.form_urlencoded-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "form_urlencoded",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "1.1.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__percent-encoding-2.2.0//:percent_encoding",
-        ],
-    }),
+        "@cui__percent-encoding-2.2.0//:percent_encoding",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.fuchsia-cprng-0.1.1.bazel b/crate_universe/3rdparty/crates/BUILD.fuchsia-cprng-0.1.1.bazel
index c50154a..8db8706 100644
--- a/crate_universe/3rdparty/crates/BUILD.fuchsia-cprng-0.1.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.fuchsia-cprng-0.1.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -15,62 +13,22 @@
 
 package(default_visibility = ["//visibility:public"])
 
-# licenses([
-#     "TODO",  #
-# ])
-
 rust_library(
     name = "fuchsia_cprng",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +36,4 @@
         "norustfmt",
     ],
     version = "0.1.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.generic-array-0.14.6.bazel b/crate_universe/3rdparty/crates/BUILD.generic-array-0.14.6.bazel
index a32d459..91a8b75 100644
--- a/crate_universe/3rdparty/crates/BUILD.generic-array-0.14.6.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.generic-array-0.14.6.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "generic_array",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "more_lengths",
-    ],
+    ),
+    crate_features = ["more_lengths"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,69 +43,29 @@
     ],
     version = "0.14.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__generic-array-0.14.6//:build_script_build",
-            "@cui__typenum-1.16.0//:typenum",
-        ],
-    }),
+        "@cui__generic-array-0.14.6//:build_script_build",
+        "@cui__typenum-1.16.0//:typenum",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "generic-array_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "more_lengths",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["more_lengths"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,29 +74,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.14.6",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__version_check-0.9.4//:version_check",
-        ],
-    }),
+        "@cui__version_check-0.9.4//:version_check",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "generic-array_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.getrandom-0.2.8.bazel b/crate_universe/3rdparty/crates/BUILD.getrandom-0.2.8.bazel
index 4aa9113..9f5cc7b 100644
--- a/crate_universe/3rdparty/crates/BUILD.getrandom-0.2.8.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.getrandom-0.2.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "getrandom",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,89 +42,68 @@
     ],
     version = "0.2.8",
     deps = [
+        "@cui__cfg-if-1.0.0//:cfg_if",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__wasi-0.11.0-wasi-snapshot-preview1//:wasi",  # cfg(target_os = "wasi")
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-            "@cui__cfg-if-1.0.0//:cfg_if",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.git2-0.15.0.bazel b/crate_universe/3rdparty/crates/BUILD.git2-0.15.0.bazel
index 0d985e2..32c1075 100644
--- a/crate_universe/3rdparty/crates/BUILD.git2-0.15.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.git2-0.15.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "git2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,13 +41,10 @@
     ],
     version = "0.15.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__bitflags-1.3.2//:bitflags",
-            "@cui__libc-0.2.139//:libc",
-            "@cui__libgit2-sys-0.14.0-1.5.0//:libgit2_sys",
-            "@cui__log-0.4.17//:log",
-            "@cui__url-2.3.1//:url",
-        ],
-    }),
+        "@cui__bitflags-1.3.2//:bitflags",
+        "@cui__libc-0.2.139//:libc",
+        "@cui__libgit2-sys-0.14.0-1.5.0//:libgit2_sys",
+        "@cui__log-0.4.17//:log",
+        "@cui__url-2.3.1//:url",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.globset-0.4.9.bazel b/crate_universe/3rdparty/crates/BUILD.globset-0.4.9.bazel
index 0f7a88f..c2e225d 100644
--- a/crate_universe/3rdparty/crates/BUILD.globset-0.4.9.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.globset-0.4.9.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "globset",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "log",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,13 +45,10 @@
     ],
     version = "0.4.9",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__aho-corasick-0.7.20//:aho_corasick",
-            "@cui__bstr-0.2.17//:bstr",
-            "@cui__fnv-1.0.7//:fnv",
-            "@cui__log-0.4.17//:log",
-            "@cui__regex-1.7.0//:regex",
-        ],
-    }),
+        "@cui__aho-corasick-0.7.20//:aho_corasick",
+        "@cui__bstr-0.2.17//:bstr",
+        "@cui__fnv-1.0.7//:fnv",
+        "@cui__log-0.4.17//:log",
+        "@cui__regex-1.7.0//:regex",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.globwalk-0.8.1.bazel b/crate_universe/3rdparty/crates/BUILD.globwalk-0.8.1.bazel
index b41cec7..025e308 100644
--- a/crate_universe/3rdparty/crates/BUILD.globwalk-0.8.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.globwalk-0.8.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "globwalk",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.8.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__bitflags-1.3.2//:bitflags",
-            "@cui__ignore-0.4.18//:ignore",
-            "@cui__walkdir-2.3.2//:walkdir",
-        ],
-    }),
+        "@cui__bitflags-1.3.2//:bitflags",
+        "@cui__ignore-0.4.18//:ignore",
+        "@cui__walkdir-2.3.2//:walkdir",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.hashbrown-0.12.3.bazel b/crate_universe/3rdparty/crates/BUILD.hashbrown-0.12.3.bazel
index 900bb50..3ec6623 100644
--- a/crate_universe/3rdparty/crates/BUILD.hashbrown-0.12.3.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.hashbrown-0.12.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "hashbrown",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "ahash",
         "default",
         "inline-more",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,6 @@
     ],
     version = "0.12.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__ahash-0.7.6//:ahash",
-        ],
-    }),
+        "@cui__ahash-0.7.6//:ahash",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.heck-0.4.0.bazel b/crate_universe/3rdparty/crates/BUILD.heck-0.4.0.bazel
index 3d0f4c6..7252172 100644
--- a/crate_universe/3rdparty/crates/BUILD.heck-0.4.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.heck-0.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "heck",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.4.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.hermit-abi-0.2.6.bazel b/crate_universe/3rdparty/crates/BUILD.hermit-abi-0.2.6.bazel
index 0af77f8..7d026ad 100644
--- a/crate_universe/3rdparty/crates/BUILD.hermit-abi-0.2.6.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.hermit-abi-0.2.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hermit_abi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.2.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__libc-0.2.139//:libc",
-        ],
-    }),
+        "@cui__libc-0.2.139//:libc",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.hex-0.4.3.bazel b/crate_universe/3rdparty/crates/BUILD.hex-0.4.3.bazel
index 2988dea..21b1e63 100644
--- a/crate_universe/3rdparty/crates/BUILD.hex-0.4.3.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.hex-0.4.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "hex",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
@@ -52,29 +37,8 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -83,9 +47,6 @@
     ],
     version = "0.4.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__serde-1.0.152//:serde",
-        ],
-    }),
+        "@cui__serde-1.0.152//:serde",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.home-0.5.4.bazel b/crate_universe/3rdparty/crates/BUILD.home-0.5.4.bazel
index 1b47ae0..41ff8aa 100644
--- a/crate_universe/3rdparty/crates/BUILD.home-0.5.4.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.home-0.5.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "home",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.5.4",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.humansize-1.1.1.bazel b/crate_universe/3rdparty/crates/BUILD.humansize-1.1.1.bazel
index f8fd932..0c9e491 100644
--- a/crate_universe/3rdparty/crates/BUILD.humansize-1.1.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.humansize-1.1.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "humansize",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.iana-time-zone-0.1.53.bazel b/crate_universe/3rdparty/crates/BUILD.iana-time-zone-0.1.53.bazel
index 5e82792..87121be 100644
--- a/crate_universe/3rdparty/crates/BUILD.iana-time-zone-0.1.53.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.iana-time-zone-0.1.53.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "iana_time_zone",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "fallback",
-    ],
+    ),
+    crate_features = ["fallback"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,8 +41,7 @@
         "norustfmt",
     ],
     version = "0.1.53",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@cui__core-foundation-sys-0.8.3//:core_foundation_sys",  # cfg(any(target_os = "macos", target_os = "ios"))
         ],
@@ -128,7 +89,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@cui__winapi-0.3.9//:winapi",  # cfg(target_os = "windows")
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.iana-time-zone-haiku-0.1.1.bazel b/crate_universe/3rdparty/crates/BUILD.iana-time-zone-haiku-0.1.1.bazel
index 9a1529e..65fa7c2 100644
--- a/crate_universe/3rdparty/crates/BUILD.iana-time-zone-haiku-0.1.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.iana-time-zone-haiku-0.1.1.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "iana_time_zone_haiku",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.1.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__cxx-1.0.85//:cxx",
-            "@cui__iana-time-zone-haiku-0.1.1//:build_script_build",
-        ],
-    }),
+        "@cui__cxx-1.0.85//:cxx",
+        "@cui__iana-time-zone-haiku-0.1.1//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "iana-time-zone-haiku_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,29 +72,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.1.1",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__cxx-build-1.0.85//:cxx_build",
-        ],
-    }),
+        "@cui__cxx-build-1.0.85//:cxx_build",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "iana-time-zone-haiku_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.idna-0.3.0.bazel b/crate_universe/3rdparty/crates/BUILD.idna-0.3.0.bazel
index 0350039..0031ff2 100644
--- a/crate_universe/3rdparty/crates/BUILD.idna-0.3.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.idna-0.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "idna",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.3.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__unicode-bidi-0.3.8//:unicode_bidi",
-            "@cui__unicode-normalization-0.1.22//:unicode_normalization",
-        ],
-    }),
+        "@cui__unicode-bidi-0.3.8//:unicode_bidi",
+        "@cui__unicode-normalization-0.1.22//:unicode_normalization",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.ignore-0.4.18.bazel b/crate_universe/3rdparty/crates/BUILD.ignore-0.4.18.bazel
index a5c3649..5ba92bb 100644
--- a/crate_universe/3rdparty/crates/BUILD.ignore-0.4.18.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.ignore-0.4.18.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "ignore",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,53 +41,25 @@
     ],
     version = "0.4.18",
     deps = [
+        "@cui__crossbeam-utils-0.8.14//:crossbeam_utils",
+        "@cui__globset-0.4.9//:globset",
+        "@cui__lazy_static-1.4.0//:lazy_static",
+        "@cui__log-0.4.17//:log",
+        "@cui__memchr-2.5.0//:memchr",
+        "@cui__regex-1.7.0//:regex",
+        "@cui__same-file-1.0.6//:same_file",
+        "@cui__thread_local-1.1.4//:thread_local",
+        "@cui__walkdir-2.3.2//:walkdir",
     ] + select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@cui__crossbeam-utils-0.8.14//:crossbeam_utils",  # common dependency
-            "@cui__globset-0.4.9//:globset",  # common dependency
-            "@cui__lazy_static-1.4.0//:lazy_static",  # common dependency
-            "@cui__log-0.4.17//:log",  # common dependency
-            "@cui__memchr-2.5.0//:memchr",  # common dependency
-            "@cui__regex-1.7.0//:regex",  # common dependency
-            "@cui__same-file-1.0.6//:same_file",  # common dependency
-            "@cui__thread_local-1.1.4//:thread_local",  # common dependency
-            "@cui__walkdir-2.3.2//:walkdir",  # common dependency
             "@cui__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@cui__crossbeam-utils-0.8.14//:crossbeam_utils",  # common dependency
-            "@cui__globset-0.4.9//:globset",  # common dependency
-            "@cui__lazy_static-1.4.0//:lazy_static",  # common dependency
-            "@cui__log-0.4.17//:log",  # common dependency
-            "@cui__memchr-2.5.0//:memchr",  # common dependency
-            "@cui__regex-1.7.0//:regex",  # common dependency
-            "@cui__same-file-1.0.6//:same_file",  # common dependency
-            "@cui__thread_local-1.1.4//:thread_local",  # common dependency
-            "@cui__walkdir-2.3.2//:walkdir",  # common dependency
             "@cui__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@cui__crossbeam-utils-0.8.14//:crossbeam_utils",  # common dependency
-            "@cui__globset-0.4.9//:globset",  # common dependency
-            "@cui__lazy_static-1.4.0//:lazy_static",  # common dependency
-            "@cui__log-0.4.17//:log",  # common dependency
-            "@cui__memchr-2.5.0//:memchr",  # common dependency
-            "@cui__regex-1.7.0//:regex",  # common dependency
-            "@cui__same-file-1.0.6//:same_file",  # common dependency
-            "@cui__thread_local-1.1.4//:thread_local",  # common dependency
-            "@cui__walkdir-2.3.2//:walkdir",  # common dependency
             "@cui__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
-        "//conditions:default": [
-            "@cui__crossbeam-utils-0.8.14//:crossbeam_utils",
-            "@cui__globset-0.4.9//:globset",
-            "@cui__lazy_static-1.4.0//:lazy_static",
-            "@cui__log-0.4.17//:log",
-            "@cui__memchr-2.5.0//:memchr",
-            "@cui__regex-1.7.0//:regex",
-            "@cui__same-file-1.0.6//:same_file",
-            "@cui__thread_local-1.1.4//:thread_local",
-            "@cui__walkdir-2.3.2//:walkdir",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.indoc-1.0.8.bazel b/crate_universe/3rdparty/crates/BUILD.indoc-1.0.8.bazel
index 5d21755..51da762 100644
--- a/crate_universe/3rdparty/crates/BUILD.indoc-1.0.8.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.indoc-1.0.8.bazel
@@ -3,7 +3,7 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //crate_universe/3rdparty:crates_vendor
+#     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
 load(
diff --git a/crate_universe/3rdparty/crates/BUILD.instant-0.1.12.bazel b/crate_universe/3rdparty/crates/BUILD.instant-0.1.12.bazel
index 8a08697..67a3438 100644
--- a/crate_universe/3rdparty/crates/BUILD.instant-0.1.12.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.instant-0.1.12.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "instant",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.1.12",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__cfg-if-1.0.0//:cfg_if",
-        ],
-    }),
+        "@cui__cfg-if-1.0.0//:cfg_if",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.io-lifetimes-1.0.3.bazel b/crate_universe/3rdparty/crates/BUILD.io-lifetimes-1.0.3.bazel
index 4407023..4d8af71 100644
--- a/crate_universe/3rdparty/crates/BUILD.io-lifetimes-1.0.3.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.io-lifetimes-1.0.3.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "io_lifetimes",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "close",
         "default",
@@ -57,29 +38,8 @@
         "windows-sys",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -88,137 +48,93 @@
     ],
     version = "1.0.3",
     deps = [
+        "@cui__io-lifetimes-1.0.3//:build_script_build",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:riscv32imc-unknown-none-elf": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:riscv64gc-unknown-none-elf": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:wasm32-unknown-unknown": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
-        "//conditions:default": [
-            "@cui__io-lifetimes-1.0.3//:build_script_build",
-        ],
+        "//conditions:default": [],
     }),
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "io-lifetimes_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "close",
         "default",
@@ -231,32 +147,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -265,28 +163,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.3",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "io-lifetimes_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.is-terminal-0.4.2.bazel b/crate_universe/3rdparty/crates/BUILD.is-terminal-0.4.2.bazel
index 2e1d60d..3418385 100644
--- a/crate_universe/3rdparty/crates/BUILD.is-terminal-0.4.2.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.is-terminal-0.4.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "is_terminal",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,109 +41,83 @@
     ],
     version = "0.4.2",
     deps = [
+        "@cui__io-lifetimes-1.0.3//:io_lifetimes",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:riscv32imc-unknown-none-elf": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:riscv64gc-unknown-none-elf": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__rustix-0.36.6//:rustix",  # cfg(not(any(windows, target_os = "hermit", target_os = "unknown")))
         ],
-        "//conditions:default": [
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.itoa-1.0.5.bazel b/crate_universe/3rdparty/crates/BUILD.itoa-1.0.5.bazel
index eb587e0..95d0839 100644
--- a/crate_universe/3rdparty/crates/BUILD.itoa-1.0.5.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.itoa-1.0.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "itoa",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.5",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.jobserver-0.1.25.bazel b/crate_universe/3rdparty/crates/BUILD.jobserver-0.1.25.bazel
index fb8c1c2..fc133ff 100644
--- a/crate_universe/3rdparty/crates/BUILD.jobserver-0.1.25.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.jobserver-0.1.25.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "jobserver",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.1.25",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
@@ -137,7 +98,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.js-sys-0.3.60.bazel b/crate_universe/3rdparty/crates/BUILD.js-sys-0.3.60.bazel
index 6578722..772c4e9 100644
--- a/crate_universe/3rdparty/crates/BUILD.js-sys-0.3.60.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.js-sys-0.3.60.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "js_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.3.60",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__wasm-bindgen-0.2.83//:wasm_bindgen",
-        ],
-    }),
+        "@cui__wasm-bindgen-0.2.83//:wasm_bindgen",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel b/crate_universe/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel
index 1a97ca8..63651db 100644
--- a/crate_universe/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "lazy_static",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.4.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.libc-0.2.139.bazel b/crate_universe/3rdparty/crates/BUILD.libc-0.2.139.bazel
index c1dec1d..e3673d0 100644
--- a/crate_universe/3rdparty/crates/BUILD.libc-0.2.139.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.libc-0.2.139.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "libc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "extra_traits",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,33 +47,13 @@
     ],
     version = "0.2.139",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__libc-0.2.139//:build_script_build",
-        ],
-    }),
+        "@cui__libc-0.2.139//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "libc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "extra_traits",
@@ -125,32 +65,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -159,28 +81,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.139",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "libc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.libgit2-sys-0.14.0+1.5.0.bazel b/crate_universe/3rdparty/crates/BUILD.libgit2-sys-0.14.0+1.5.0.bazel
index 420002a..a001f55 100644
--- a/crate_universe/3rdparty/crates/BUILD.libgit2-sys-0.14.0+1.5.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.libgit2-sys-0.14.0+1.5.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "libgit2_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.14.0+1.5.0",
     deps = [
+        "@cui__libc-0.2.139//:libc",
+        "@cui__libz-sys-1.1.8//:libz_sys",
         "@libgit2",
-    ] + select({
-        "//conditions:default": [
-            "@cui__libc-0.2.139//:libc",
-            "@cui__libz-sys-1.1.8//:libz_sys",
-        ],
-    }),
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.libz-sys-1.1.8.bazel b/crate_universe/3rdparty/crates/BUILD.libz-sys-1.1.8.bazel
index 0915806..fbcb9eb 100644
--- a/crate_universe/3rdparty/crates/BUILD.libz-sys-1.1.8.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.libz-sys-1.1.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "libz_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "libc",
-    ],
+    ),
+    crate_features = ["libc"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,10 +42,7 @@
     ],
     version = "1.1.8",
     deps = [
+        "@cui__libc-0.2.139//:libc",
         "@zlib",
-    ] + select({
-        "//conditions:default": [
-            "@cui__libc-0.2.139//:libc",
-        ],
-    }),
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.link-cplusplus-1.0.8.bazel b/crate_universe/3rdparty/crates/BUILD.link-cplusplus-1.0.8.bazel
index c92ef18..9153762 100644
--- a/crate_universe/3rdparty/crates/BUILD.link-cplusplus-1.0.8.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.link-cplusplus-1.0.8.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "link_cplusplus",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,69 +43,29 @@
     ],
     version = "1.0.8",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__link-cplusplus-1.0.8//:build_script_build",
-        ],
-    }),
+        "@cui__link-cplusplus-1.0.8//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "link-cplusplus_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["default"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
     links = "cplusplus",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,29 +74,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.8",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__cc-1.0.78//:cc",
-        ],
-    }),
+        "@cui__cc-1.0.78//:cc",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "link-cplusplus_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.linux-raw-sys-0.1.4.bazel b/crate_universe/3rdparty/crates/BUILD.linux-raw-sys-0.1.4.bazel
index b107ba8..0636fa5 100644
--- a/crate_universe/3rdparty/crates/BUILD.linux-raw-sys-0.1.4.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.linux-raw-sys-0.1.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "linux_raw_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "errno",
         "general",
@@ -52,29 +37,8 @@
         "no_std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,4 @@
         "norustfmt",
     ],
     version = "0.1.4",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.log-0.4.17.bazel b/crate_universe/3rdparty/crates/BUILD.log-0.4.17.bazel
index 3bef6ff..92969ef 100644
--- a/crate_universe/3rdparty/crates/BUILD.log-0.4.17.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.log-0.4.17.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "log",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.4.17",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__cfg-if-1.0.0//:cfg_if",
-            "@cui__log-0.4.17//:build_script_build",
-        ],
-    }),
+        "@cui__cfg-if-1.0.0//:cfg_if",
+        "@cui__log-0.4.17//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "log_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,28 +72,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.17",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "log_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.maplit-1.0.2.bazel b/crate_universe/3rdparty/crates/BUILD.maplit-1.0.2.bazel
index 6f00aae..c2b45d7 100644
--- a/crate_universe/3rdparty/crates/BUILD.maplit-1.0.2.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.maplit-1.0.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "maplit",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.memchr-2.5.0.bazel b/crate_universe/3rdparty/crates/BUILD.memchr-2.5.0.bazel
index 02acc90..80b9976 100644
--- a/crate_universe/3rdparty/crates/BUILD.memchr-2.5.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.memchr-2.5.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "memchr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "2.5.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__memchr-2.5.0//:build_script_build",
-        ],
-    }),
+        "@cui__memchr-2.5.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "memchr_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "2.5.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "memchr_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.normpath-0.3.2.bazel b/crate_universe/3rdparty/crates/BUILD.normpath-0.3.2.bazel
index 43dd0a6..2990bd3 100644
--- a/crate_universe/3rdparty/crates/BUILD.normpath-0.3.2.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.normpath-0.3.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "normpath",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.3.2",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.num-0.1.42.bazel b/crate_universe/3rdparty/crates/BUILD.num-0.1.42.bazel
index 92e4bb0..57d6711 100644
--- a/crate_universe/3rdparty/crates/BUILD.num-0.1.42.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.num-0.1.42.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "num",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "bigint",
         "complex",
@@ -56,29 +41,8 @@
         "rustc-serialize",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,14 +51,11 @@
     ],
     version = "0.1.42",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__num-bigint-0.1.44//:num_bigint",
-            "@cui__num-complex-0.1.43//:num_complex",
-            "@cui__num-integer-0.1.45//:num_integer",
-            "@cui__num-iter-0.1.43//:num_iter",
-            "@cui__num-rational-0.1.42//:num_rational",
-            "@cui__num-traits-0.2.15//:num_traits",
-        ],
-    }),
+        "@cui__num-bigint-0.1.44//:num_bigint",
+        "@cui__num-complex-0.1.43//:num_complex",
+        "@cui__num-integer-0.1.45//:num_integer",
+        "@cui__num-iter-0.1.43//:num_iter",
+        "@cui__num-rational-0.1.42//:num_rational",
+        "@cui__num-traits-0.2.15//:num_traits",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.num-bigint-0.1.44.bazel b/crate_universe/3rdparty/crates/BUILD.num-bigint-0.1.44.bazel
index b385e45..5e2d50c 100644
--- a/crate_universe/3rdparty/crates/BUILD.num-bigint-0.1.44.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.num-bigint-0.1.44.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "num_bigint",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "rand",
         "rustc-serialize",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,12 +46,9 @@
     ],
     version = "0.1.44",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__num-integer-0.1.45//:num_integer",
-            "@cui__num-traits-0.2.15//:num_traits",
-            "@cui__rand-0.4.6//:rand",
-            "@cui__rustc-serialize-0.3.24//:rustc_serialize",
-        ],
-    }),
+        "@cui__num-integer-0.1.45//:num_integer",
+        "@cui__num-traits-0.2.15//:num_traits",
+        "@cui__rand-0.4.6//:rand",
+        "@cui__rustc-serialize-0.3.24//:rustc_serialize",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.num-complex-0.1.43.bazel b/crate_universe/3rdparty/crates/BUILD.num-complex-0.1.43.bazel
index c030a6a..6fc3f71 100644
--- a/crate_universe/3rdparty/crates/BUILD.num-complex-0.1.43.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.num-complex-0.1.43.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "num_complex",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "rustc-serialize",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,10 +45,7 @@
     ],
     version = "0.1.43",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__num-traits-0.2.15//:num_traits",
-            "@cui__rustc-serialize-0.3.24//:rustc_serialize",
-        ],
-    }),
+        "@cui__num-traits-0.2.15//:num_traits",
+        "@cui__rustc-serialize-0.3.24//:rustc_serialize",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.num-integer-0.1.45.bazel b/crate_universe/3rdparty/crates/BUILD.num-integer-0.1.45.bazel
index 784b8c9..d250482 100644
--- a/crate_universe/3rdparty/crates/BUILD.num-integer-0.1.45.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.num-integer-0.1.45.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "num_integer",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "0.1.45",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__num-integer-0.1.45//:build_script_build",
-            "@cui__num-traits-0.2.15//:num_traits",
-        ],
-    }),
+        "@cui__num-integer-0.1.45//:build_script_build",
+        "@cui__num-traits-0.2.15//:num_traits",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "num-integer_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,29 +80,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.1.45",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@cui__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "num-integer_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.num-iter-0.1.43.bazel b/crate_universe/3rdparty/crates/BUILD.num-iter-0.1.43.bazel
index e097d5f..cffff7f 100644
--- a/crate_universe/3rdparty/crates/BUILD.num-iter-0.1.43.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.num-iter-0.1.43.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "num_iter",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,35 +46,15 @@
     ],
     version = "0.1.43",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__num-integer-0.1.45//:num_integer",
-            "@cui__num-iter-0.1.43//:build_script_build",
-            "@cui__num-traits-0.2.15//:num_traits",
-        ],
-    }),
+        "@cui__num-integer-0.1.45//:num_integer",
+        "@cui__num-iter-0.1.43//:build_script_build",
+        "@cui__num-traits-0.2.15//:num_traits",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "num-iter_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -125,32 +65,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -159,29 +81,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.1.43",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@cui__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "num-iter_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.num-rational-0.1.42.bazel b/crate_universe/3rdparty/crates/BUILD.num-rational-0.1.42.bazel
index 5857936..2a86b23 100644
--- a/crate_universe/3rdparty/crates/BUILD.num-rational-0.1.42.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.num-rational-0.1.42.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "num_rational",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "bigint",
         "default",
@@ -52,29 +37,8 @@
         "rustc-serialize",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -83,12 +47,9 @@
     ],
     version = "0.1.42",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__num-bigint-0.1.44//:num_bigint",
-            "@cui__num-integer-0.1.45//:num_integer",
-            "@cui__num-traits-0.2.15//:num_traits",
-            "@cui__rustc-serialize-0.3.24//:rustc_serialize",
-        ],
-    }),
+        "@cui__num-bigint-0.1.44//:num_bigint",
+        "@cui__num-integer-0.1.45//:num_integer",
+        "@cui__num-traits-0.2.15//:num_traits",
+        "@cui__rustc-serialize-0.3.24//:rustc_serialize",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.num-traits-0.2.15.bazel b/crate_universe/3rdparty/crates/BUILD.num-traits-0.2.15.bazel
index 08354a5..6b334b1 100644
--- a/crate_universe/3rdparty/crates/BUILD.num-traits-0.2.15.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.num-traits-0.2.15.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "num_traits",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "0.2.15",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__num-traits-0.2.15//:build_script_build",
-        ],
-    }),
+        "@cui__num-traits-0.2.15//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "num-traits_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,29 +79,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.15",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@cui__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "num-traits_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.num_cpus-1.15.0.bazel b/crate_universe/3rdparty/crates/BUILD.num_cpus-1.15.0.bazel
index f7a1a08..75f5a03 100644
--- a/crate_universe/3rdparty/crates/BUILD.num_cpus-1.15.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.num_cpus-1.15.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "num_cpus",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "1.15.0",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
@@ -149,7 +110,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@cui__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.once_cell-1.17.0.bazel b/crate_universe/3rdparty/crates/BUILD.once_cell-1.17.0.bazel
index aa18dcd..a1213f1 100644
--- a/crate_universe/3rdparty/crates/BUILD.once_cell-1.17.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.once_cell-1.17.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "once_cell",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
@@ -52,29 +37,8 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,4 @@
         "norustfmt",
     ],
     version = "1.17.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.os_str_bytes-6.4.1.bazel b/crate_universe/3rdparty/crates/BUILD.os_str_bytes-6.4.1.bazel
index 1da411f..84dc90e 100644
--- a/crate_universe/3rdparty/crates/BUILD.os_str_bytes-6.4.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.os_str_bytes-6.4.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "os_str_bytes",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "raw_os_str",
-    ],
+    ),
+    crate_features = ["raw_os_str"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "6.4.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.parse-zoneinfo-0.3.0.bazel b/crate_universe/3rdparty/crates/BUILD.parse-zoneinfo-0.3.0.bazel
index a167b62..45fd66a 100644
--- a/crate_universe/3rdparty/crates/BUILD.parse-zoneinfo-0.3.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.parse-zoneinfo-0.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "parse_zoneinfo",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.3.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__regex-1.7.0//:regex",
-        ],
-    }),
+        "@cui__regex-1.7.0//:regex",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.pathdiff-0.2.1.bazel b/crate_universe/3rdparty/crates/BUILD.pathdiff-0.2.1.bazel
index 2156544..00fc9d6 100644
--- a/crate_universe/3rdparty/crates/BUILD.pathdiff-0.2.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.pathdiff-0.2.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "pathdiff",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.2.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.percent-encoding-2.2.0.bazel b/crate_universe/3rdparty/crates/BUILD.percent-encoding-2.2.0.bazel
index 5cc00e6..497f17b 100644
--- a/crate_universe/3rdparty/crates/BUILD.percent-encoding-2.2.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.percent-encoding-2.2.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "percent_encoding",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "2.2.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.pest-2.5.2.bazel b/crate_universe/3rdparty/crates/BUILD.pest-2.5.2.bazel
index 88509bd..dc1d8f2 100644
--- a/crate_universe/3rdparty/crates/BUILD.pest-2.5.2.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.pest-2.5.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "pest",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
         "thiserror",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,10 +46,7 @@
     ],
     version = "2.5.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__thiserror-1.0.38//:thiserror",
-            "@cui__ucd-trie-0.1.5//:ucd_trie",
-        ],
-    }),
+        "@cui__thiserror-1.0.38//:thiserror",
+        "@cui__ucd-trie-0.1.5//:ucd_trie",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.pest_derive-2.5.2.bazel b/crate_universe/3rdparty/crates/BUILD.pest_derive-2.5.2.bazel
index 138b3b7..2a2e695 100644
--- a/crate_universe/3rdparty/crates/BUILD.pest_derive-2.5.2.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.pest_derive-2.5.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,58 +19,24 @@
 
 rust_proc_macro(
     name = "pest_derive",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,10 +45,7 @@
     ],
     version = "2.5.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__pest-2.5.2//:pest",
-            "@cui__pest_generator-2.5.2//:pest_generator",
-        ],
-    }),
+        "@cui__pest-2.5.2//:pest",
+        "@cui__pest_generator-2.5.2//:pest_generator",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.pest_generator-2.5.2.bazel b/crate_universe/3rdparty/crates/BUILD.pest_generator-2.5.2.bazel
index cb5e546..f9a4423 100644
--- a/crate_universe/3rdparty/crates/BUILD.pest_generator-2.5.2.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.pest_generator-2.5.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "pest_generator",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,13 +42,10 @@
     ],
     version = "2.5.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__pest-2.5.2//:pest",
-            "@cui__pest_meta-2.5.2//:pest_meta",
-            "@cui__proc-macro2-1.0.49//:proc_macro2",
-            "@cui__quote-1.0.23//:quote",
-            "@cui__syn-1.0.107//:syn",
-        ],
-    }),
+        "@cui__pest-2.5.2//:pest",
+        "@cui__pest_meta-2.5.2//:pest_meta",
+        "@cui__proc-macro2-1.0.49//:proc_macro2",
+        "@cui__quote-1.0.23//:quote",
+        "@cui__syn-1.0.107//:syn",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.pest_meta-2.5.2.bazel b/crate_universe/3rdparty/crates/BUILD.pest_meta-2.5.2.bazel
index fa96109..0c0d574 100644
--- a/crate_universe/3rdparty/crates/BUILD.pest_meta-2.5.2.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.pest_meta-2.5.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "pest_meta",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "2.5.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__once_cell-1.17.0//:once_cell",
-            "@cui__pest-2.5.2//:pest",
-        ],
-    }),
+        "@cui__once_cell-1.17.0//:once_cell",
+        "@cui__pest-2.5.2//:pest",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.phf-0.11.1.bazel b/crate_universe/3rdparty/crates/BUILD.phf-0.11.1.bazel
index d4e1bee..59b08ad 100644
--- a/crate_universe/3rdparty/crates/BUILD.phf-0.11.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.phf-0.11.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "phf",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "uncased",
-    ],
+    ),
+    crate_features = ["uncased"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.11.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__phf_shared-0.11.1//:phf_shared",
-        ],
-    }),
+        "@cui__phf_shared-0.11.1//:phf_shared",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.phf_codegen-0.11.1.bazel b/crate_universe/3rdparty/crates/BUILD.phf_codegen-0.11.1.bazel
index a87f900..a8aa203 100644
--- a/crate_universe/3rdparty/crates/BUILD.phf_codegen-0.11.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.phf_codegen-0.11.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "phf_codegen",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.11.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__phf_generator-0.11.1//:phf_generator",
-            "@cui__phf_shared-0.11.1//:phf_shared",
-        ],
-    }),
+        "@cui__phf_generator-0.11.1//:phf_generator",
+        "@cui__phf_shared-0.11.1//:phf_shared",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.phf_generator-0.11.1.bazel b/crate_universe/3rdparty/crates/BUILD.phf_generator-0.11.1.bazel
index 6e5c08a..fe3e1bc 100644
--- a/crate_universe/3rdparty/crates/BUILD.phf_generator-0.11.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.phf_generator-0.11.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "phf_generator",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.11.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__phf_shared-0.11.1//:phf_shared",
-            "@cui__rand-0.8.5//:rand",
-        ],
-    }),
+        "@cui__phf_shared-0.11.1//:phf_shared",
+        "@cui__rand-0.8.5//:rand",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.phf_shared-0.11.1.bazel b/crate_universe/3rdparty/crates/BUILD.phf_shared-0.11.1.bazel
index 0b1f809..38b6f91 100644
--- a/crate_universe/3rdparty/crates/BUILD.phf_shared-0.11.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.phf_shared-0.11.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "phf_shared",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
         "uncased",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,10 +46,7 @@
     ],
     version = "0.11.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__siphasher-0.3.10//:siphasher",
-            "@cui__uncased-0.9.7//:uncased",
-        ],
-    }),
+        "@cui__siphasher-0.3.10//:siphasher",
+        "@cui__uncased-0.9.7//:uncased",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel b/crate_universe/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel
index 2a00ab6..6907b38 100644
--- a/crate_universe/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "pkg_config",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.26",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.ppv-lite86-0.2.17.bazel b/crate_universe/3rdparty/crates/BUILD.ppv-lite86-0.2.17.bazel
index 918768e..91b44d4 100644
--- a/crate_universe/3rdparty/crates/BUILD.ppv-lite86-0.2.17.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.ppv-lite86-0.2.17.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "ppv_lite86",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "simd",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "0.2.17",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.proc-macro-error-1.0.4.bazel b/crate_universe/3rdparty/crates/BUILD.proc-macro-error-1.0.4.bazel
index 23cfef9..271ea8f 100644
--- a/crate_universe/3rdparty/crates/BUILD.proc-macro-error-1.0.4.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.proc-macro-error-1.0.4.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,60 +20,28 @@
 
 rust_library(
     name = "proc_macro_error",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "syn",
         "syn-error",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__proc-macro-error-attr-1.0.4//:proc_macro_error_attr",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@cui__proc-macro-error-attr-1.0.4//:proc_macro_error_attr",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -88,36 +50,16 @@
     ],
     version = "1.0.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__proc-macro-error-1.0.4//:build_script_build",
-            "@cui__proc-macro2-1.0.49//:proc_macro2",
-            "@cui__quote-1.0.23//:quote",
-            "@cui__syn-1.0.107//:syn",
-        ],
-    }),
+        "@cui__proc-macro-error-1.0.4//:build_script_build",
+        "@cui__proc-macro2-1.0.49//:proc_macro2",
+        "@cui__quote-1.0.23//:quote",
+        "@cui__syn-1.0.107//:syn",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "proc-macro-error_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "syn",
@@ -129,32 +71,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -163,29 +87,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.4",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__version_check-0.9.4//:version_check",
-        ],
-    }),
+        "@cui__version_check-0.9.4//:version_check",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "proc-macro-error_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.proc-macro-error-attr-1.0.4.bazel b/crate_universe/3rdparty/crates/BUILD.proc-macro-error-attr-1.0.4.bazel
index 32ec75a..2fe06c8 100644
--- a/crate_universe/3rdparty/crates/BUILD.proc-macro-error-attr-1.0.4.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.proc-macro-error-attr-1.0.4.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -26,56 +20,20 @@
 
 rust_proc_macro(
     name = "proc_macro_error_attr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,69 +42,29 @@
     ],
     version = "1.0.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__proc-macro-error-attr-1.0.4//:build_script_build",
-            "@cui__proc-macro2-1.0.49//:proc_macro2",
-            "@cui__quote-1.0.23//:quote",
-        ],
-    }),
+        "@cui__proc-macro-error-attr-1.0.4//:build_script_build",
+        "@cui__proc-macro2-1.0.49//:proc_macro2",
+        "@cui__quote-1.0.23//:quote",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "proc-macro-error-attr_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -155,29 +73,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.4",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__version_check-0.9.4//:version_check",
-        ],
-    }),
+        "@cui__version_check-0.9.4//:version_check",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "proc-macro-error-attr_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel b/crate_universe/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel
index 20600f6..c660ed6 100644
--- a/crate_universe/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "proc_macro2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
         "span-locations",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,34 +47,14 @@
     ],
     version = "1.0.49",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__proc-macro2-1.0.49//:build_script_build",
-            "@cui__unicode-ident-1.0.6//:unicode_ident",
-        ],
-    }),
+        "@cui__proc-macro2-1.0.49//:build_script_build",
+        "@cui__unicode-ident-1.0.6//:unicode_ident",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "proc-macro2_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -126,32 +66,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -160,28 +82,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.49",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "proc-macro2_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.quote-1.0.23.bazel b/crate_universe/3rdparty/crates/BUILD.quote-1.0.23.bazel
index 0660980..9fa96a8 100644
--- a/crate_universe/3rdparty/crates/BUILD.quote-1.0.23.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.quote-1.0.23.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "quote",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "1.0.23",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__proc-macro2-1.0.49//:proc_macro2",
-            "@cui__quote-1.0.23//:build_script_build",
-        ],
-    }),
+        "@cui__proc-macro2-1.0.49//:proc_macro2",
+        "@cui__quote-1.0.23//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "quote_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.23",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "quote_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.rand-0.4.6.bazel b/crate_universe/3rdparty/crates/BUILD.rand-0.4.6.bazel
index c97d49a..da84bf0 100644
--- a/crate_universe/3rdparty/crates/BUILD.rand-0.4.6.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.rand-0.4.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "rand",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "libc",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,8 +45,7 @@
         "norustfmt",
     ],
     version = "0.4.6",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
@@ -149,7 +112,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.rand-0.8.5.bazel b/crate_universe/3rdparty/crates/BUILD.rand-0.8.5.bazel
index 20cf2d1..8091086 100644
--- a/crate_universe/3rdparty/crates/BUILD.rand-0.8.5.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.rand-0.8.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "rand",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
@@ -56,29 +41,8 @@
         "std_rng",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,105 +51,66 @@
     ],
     version = "0.8.5",
     deps = [
+        "@cui__rand_chacha-0.3.1//:rand_chacha",
+        "@cui__rand_core-0.6.4//:rand_core",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@cui__libc-0.2.139//:libc",  # cfg(unix)
-            "@cui__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@cui__rand_core-0.6.4//:rand_core",  # common dependency
         ],
-        "//conditions:default": [
-            "@cui__rand_chacha-0.3.1//:rand_chacha",
-            "@cui__rand_core-0.6.4//:rand_core",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.rand_chacha-0.3.1.bazel b/crate_universe/3rdparty/crates/BUILD.rand_chacha-0.3.1.bazel
index 2357295..7fb7038 100644
--- a/crate_universe/3rdparty/crates/BUILD.rand_chacha-0.3.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.rand_chacha-0.3.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "rand_chacha",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,10 +42,7 @@
     ],
     version = "0.3.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__ppv-lite86-0.2.17//:ppv_lite86",
-            "@cui__rand_core-0.6.4//:rand_core",
-        ],
-    }),
+        "@cui__ppv-lite86-0.2.17//:ppv_lite86",
+        "@cui__rand_core-0.6.4//:rand_core",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.rand_core-0.3.1.bazel b/crate_universe/3rdparty/crates/BUILD.rand_core-0.3.1.bazel
index e3cdf4a..50b668c 100644
--- a/crate_universe/3rdparty/crates/BUILD.rand_core-0.3.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.rand_core-0.3.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "rand_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.3.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__rand_core-0.4.2//:rand_core",
-        ],
-    }),
+        "@cui__rand_core-0.4.2//:rand_core",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.rand_core-0.4.2.bazel b/crate_universe/3rdparty/crates/BUILD.rand_core-0.4.2.bazel
index 48a706a..1254e86 100644
--- a/crate_universe/3rdparty/crates/BUILD.rand_core-0.4.2.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.rand_core-0.4.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "rand_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.4.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.rand_core-0.6.4.bazel b/crate_universe/3rdparty/crates/BUILD.rand_core-0.6.4.bazel
index 4b224e5..dfa53a6 100644
--- a/crate_universe/3rdparty/crates/BUILD.rand_core-0.6.4.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.rand_core-0.6.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "rand_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "getrandom",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,6 @@
     ],
     version = "0.6.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__getrandom-0.2.8//:getrandom",
-        ],
-    }),
+        "@cui__getrandom-0.2.8//:getrandom",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.rdrand-0.4.0.bazel b/crate_universe/3rdparty/crates/BUILD.rdrand-0.4.0.bazel
index 4537033..a563c71 100644
--- a/crate_universe/3rdparty/crates/BUILD.rdrand-0.4.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.rdrand-0.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "rdrand",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__rand_core-0.3.1//:rand_core",
-        ],
-    }),
+        "@cui__rand_core-0.3.1//:rand_core",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.redox_syscall-0.2.16.bazel b/crate_universe/3rdparty/crates/BUILD.redox_syscall-0.2.16.bazel
index aab1f40..d00b186 100644
--- a/crate_universe/3rdparty/crates/BUILD.redox_syscall-0.2.16.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.redox_syscall-0.2.16.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "syscall",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.2.16",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__bitflags-1.3.2//:bitflags",
-        ],
-    }),
+        "@cui__bitflags-1.3.2//:bitflags",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.regex-1.7.0.bazel b/crate_universe/3rdparty/crates/BUILD.regex-1.7.0.bazel
index 229382f..a35d897 100644
--- a/crate_universe/3rdparty/crates/BUILD.regex-1.7.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.regex-1.7.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "regex",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "aho-corasick",
         "default",
@@ -65,29 +50,8 @@
         "unicode-segment",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -96,11 +60,8 @@
     ],
     version = "1.7.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__aho-corasick-0.7.20//:aho_corasick",
-            "@cui__memchr-2.5.0//:memchr",
-            "@cui__regex-syntax-0.6.28//:regex_syntax",
-        ],
-    }),
+        "@cui__aho-corasick-0.7.20//:aho_corasick",
+        "@cui__memchr-2.5.0//:memchr",
+        "@cui__regex-syntax-0.6.28//:regex_syntax",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel b/crate_universe/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel
index 0cf51b6..ef51900 100644
--- a/crate_universe/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "regex_syntax",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "unicode",
@@ -57,29 +42,8 @@
         "unicode-segment",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,9 +51,4 @@
         "norustfmt",
     ],
     version = "0.6.28",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.remove_dir_all-0.5.3.bazel b/crate_universe/3rdparty/crates/BUILD.remove_dir_all-0.5.3.bazel
index 44ac0e0..b71c325 100644
--- a/crate_universe/3rdparty/crates/BUILD.remove_dir_all-0.5.3.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.remove_dir_all-0.5.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "remove_dir_all",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.5.3",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.rustc-hash-1.1.0.bazel b/crate_universe/3rdparty/crates/BUILD.rustc-hash-1.1.0.bazel
index dd512c8..bd08358 100644
--- a/crate_universe/3rdparty/crates/BUILD.rustc-hash-1.1.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.rustc-hash-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "rustc_hash",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.rustc-serialize-0.3.24.bazel b/crate_universe/3rdparty/crates/BUILD.rustc-serialize-0.3.24.bazel
index 14cdd5b..731118c 100644
--- a/crate_universe/3rdparty/crates/BUILD.rustc-serialize-0.3.24.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.rustc-serialize-0.3.24.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "rustc_serialize",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.24",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.rustix-0.36.6.bazel b/crate_universe/3rdparty/crates/BUILD.rustix-0.36.6.bazel
index dd978dd..68795ab 100644
--- a/crate_universe/3rdparty/crates/BUILD.rustix-0.36.6.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.rustix-0.36.6.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,13 +20,7 @@
 
 rust_library(
     name = "rustix",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
+    srcs = glob(["**/*.rs"]),
     aliases = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": {
             "@cui__errno-0.2.8//:errno": "libc_errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
@@ -97,22 +85,18 @@
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": {
             "@cui__errno-0.2.8//:errno": "libc_errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
         },
-        "//conditions:default": {
-        },
+        "//conditions:default": {},
     }),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "io-lifetimes",
@@ -122,29 +106,8 @@
         "use-libc-auxv",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -153,226 +116,130 @@
     ],
     version = "0.36.6",
     deps = [
+        "@cui__bitflags-1.3.2//:bitflags",
+        "@cui__io-lifetimes-1.0.3//:io_lifetimes",
+        "@cui__rustix-0.36.6//:build_script_build",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
             "@cui__linux-raw-sys-0.1.4//:linux_raw_sys",  # cfg(all(any(target_os = "android", target_os = "linux"), any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64"))))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
             "@cui__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(all(not(rustix_use_libc), not(miri), target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))
             "@cui__linux-raw-sys-0.1.4//:linux_raw_sys",  # cfg(all(not(rustix_use_libc), not(miri), target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(all(not(rustix_use_libc), not(miri), target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))
             "@cui__linux-raw-sys-0.1.4//:linux_raw_sys",  # cfg(all(not(rustix_use_libc), not(miri), target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
             "@cui__linux-raw-sys-0.1.4//:linux_raw_sys",  # cfg(all(any(target_os = "android", target_os = "linux"), any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64"))))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(all(not(rustix_use_libc), not(miri), target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))
             "@cui__linux-raw-sys-0.1.4//:linux_raw_sys",  # cfg(all(not(rustix_use_libc), not(miri), target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
             "@cui__linux-raw-sys-0.1.4//:linux_raw_sys",  # cfg(all(any(target_os = "android", target_os = "linux"), any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64"))))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
             "@cui__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(all(not(rustix_use_libc), not(miri), target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))
             "@cui__linux-raw-sys-0.1.4//:linux_raw_sys",  # cfg(all(not(rustix_use_libc), not(miri), target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
             "@cui__linux-raw-sys-0.1.4//:linux_raw_sys",  # cfg(all(any(target_os = "android", target_os = "linux"), any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64"))))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:riscv32imc-unknown-none-elf": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:riscv64gc-unknown-none-elf": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
             "@cui__linux-raw-sys-0.1.4//:linux_raw_sys",  # cfg(all(any(target_os = "android", target_os = "linux"), any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64"))))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:wasm32-unknown-unknown": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
             "@cui__linux-raw-sys-0.1.4//:linux_raw_sys",  # cfg(all(any(target_os = "android", target_os = "linux"), any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64"))))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
             "@cui__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
             "@cui__errno-0.2.8//:errno",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@cui__bitflags-1.3.2//:bitflags",  # common dependency
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(all(not(rustix_use_libc), not(miri), target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))
             "@cui__linux-raw-sys-0.1.4//:linux_raw_sys",  # cfg(all(not(rustix_use_libc), not(miri), target_os = "linux", any(target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"), all(target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "powerpc64", target_arch = "riscv64", target_arch = "mips", target_arch = "mips64")))))
-            "@cui__rustix-0.36.6//:build_script_build",  # common dependency
         ],
-        "//conditions:default": [
-            "@cui__bitflags-1.3.2//:bitflags",
-            "@cui__io-lifetimes-1.0.3//:io_lifetimes",
-            "@cui__rustix-0.36.6//:build_script_build",
-        ],
+        "//conditions:default": [],
     }),
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "rustix_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "io-lifetimes",
@@ -387,32 +254,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -421,28 +270,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.36.6",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "rustix_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.ryu-1.0.12.bazel b/crate_universe/3rdparty/crates/BUILD.ryu-1.0.12.bazel
index ba57516..867e9be 100644
--- a/crate_universe/3rdparty/crates/BUILD.ryu-1.0.12.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.ryu-1.0.12.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "ryu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.12",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.same-file-1.0.6.bazel b/crate_universe/3rdparty/crates/BUILD.same-file-1.0.6.bazel
index c788062..747d169 100644
--- a/crate_universe/3rdparty/crates/BUILD.same-file-1.0.6.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.same-file-1.0.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "same_file",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "1.0.6",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@cui__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@cui__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.scratch-1.0.3.bazel b/crate_universe/3rdparty/crates/BUILD.scratch-1.0.3.bazel
index e1e9189..ee7c8d4 100644
--- a/crate_universe/3rdparty/crates/BUILD.scratch-1.0.3.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.scratch-1.0.3.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "scratch",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "1.0.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__scratch-1.0.3//:build_script_build",
-        ],
-    }),
+        "@cui__scratch-1.0.3//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "scratch_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.3",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "scratch_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.semver-1.0.16.bazel b/crate_universe/3rdparty/crates/BUILD.semver-1.0.16.bazel
index 600a685..afe7805 100644
--- a/crate_universe/3rdparty/crates/BUILD.semver-1.0.16.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.semver-1.0.16.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "semver",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "serde",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,34 +47,14 @@
     ],
     version = "1.0.16",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__semver-1.0.16//:build_script_build",
-            "@cui__serde-1.0.152//:serde",
-        ],
-    }),
+        "@cui__semver-1.0.16//:build_script_build",
+        "@cui__serde-1.0.152//:serde",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "semver_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "serde",
@@ -126,32 +66,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -160,28 +82,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.16",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "semver_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.serde-1.0.152.bazel b/crate_universe/3rdparty/crates/BUILD.serde-1.0.152.bazel
index 0ce556f..844fe80 100644
--- a/crate_universe/3rdparty/crates/BUILD.serde-1.0.152.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.serde-1.0.152.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "serde",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "derive",
@@ -58,30 +39,11 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__serde_derive-1.0.152//:serde_derive",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@cui__serde_derive-1.0.152//:serde_derive",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -90,33 +52,13 @@
     ],
     version = "1.0.152",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__serde-1.0.152//:build_script_build",
-        ],
-    }),
+        "@cui__serde-1.0.152//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "serde_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "derive",
@@ -130,32 +72,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -164,28 +88,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.152",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "serde_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.serde_derive-1.0.152.bazel b/crate_universe/3rdparty/crates/BUILD.serde_derive-1.0.152.bazel
index fc15a0f..c795f0b 100644
--- a/crate_universe/3rdparty/crates/BUILD.serde_derive-1.0.152.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.serde_derive-1.0.152.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -26,57 +20,21 @@
 
 rust_proc_macro(
     name = "serde_derive",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,71 +43,31 @@
     ],
     version = "1.0.152",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__proc-macro2-1.0.49//:proc_macro2",
-            "@cui__quote-1.0.23//:quote",
-            "@cui__serde_derive-1.0.152//:build_script_build",
-            "@cui__syn-1.0.107//:syn",
-        ],
-    }),
+        "@cui__proc-macro2-1.0.49//:proc_macro2",
+        "@cui__quote-1.0.23//:quote",
+        "@cui__serde_derive-1.0.152//:build_script_build",
+        "@cui__syn-1.0.107//:syn",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "serde_derive_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["default"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +76,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.152",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "serde_derive_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.serde_json-1.0.91.bazel b/crate_universe/3rdparty/crates/BUILD.serde_json-1.0.91.bazel
index 6bf02ea..636f983 100644
--- a/crate_universe/3rdparty/crates/BUILD.serde_json-1.0.91.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.serde_json-1.0.91.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "serde_json",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
         "unbounded_depth",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,36 +47,16 @@
     ],
     version = "1.0.91",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__itoa-1.0.5//:itoa",
-            "@cui__ryu-1.0.12//:ryu",
-            "@cui__serde-1.0.152//:serde",
-            "@cui__serde_json-1.0.91//:build_script_build",
-        ],
-    }),
+        "@cui__itoa-1.0.5//:itoa",
+        "@cui__ryu-1.0.12//:ryu",
+        "@cui__serde-1.0.152//:serde",
+        "@cui__serde_json-1.0.91//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "serde_json_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -128,32 +68,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -162,28 +84,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.91",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "serde_json_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.serde_starlark-0.1.8.bazel b/crate_universe/3rdparty/crates/BUILD.serde_starlark-0.1.8.bazel
index bce0bc0..62f8878 100644
--- a/crate_universe/3rdparty/crates/BUILD.serde_starlark-0.1.8.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.serde_starlark-0.1.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "serde_starlark",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.1.8",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__serde-1.0.152//:serde",
-        ],
-    }),
+        "@cui__serde-1.0.152//:serde",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.sha1-0.10.5.bazel b/crate_universe/3rdparty/crates/BUILD.sha1-0.10.5.bazel
index 112e576..351d7c5 100644
--- a/crate_universe/3rdparty/crates/BUILD.sha1-0.10.5.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.sha1-0.10.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "sha1",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,95 +41,60 @@
     ],
     version = "0.10.5",
     deps = [
+        "@cui__cfg-if-1.0.0//:cfg_if",
+        "@cui__digest-0.10.6//:digest",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
-        "//conditions:default": [
-            "@cui__cfg-if-1.0.0//:cfg_if",
-            "@cui__digest-0.10.6//:digest",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.sha2-0.10.6.bazel b/crate_universe/3rdparty/crates/BUILD.sha2-0.10.6.bazel
index abd3f60..a6b6e2b 100644
--- a/crate_universe/3rdparty/crates/BUILD.sha2-0.10.6.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.sha2-0.10.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "sha2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,95 +45,60 @@
     ],
     version = "0.10.6",
     deps = [
+        "@cui__cfg-if-1.0.0//:cfg_if",
+        "@cui__digest-0.10.6//:digest",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@cui__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86_64", target_arch = "x86"))
-            "@cui__digest-0.10.6//:digest",  # common dependency
         ],
-        "//conditions:default": [
-            "@cui__cfg-if-1.0.0//:cfg_if",
-            "@cui__digest-0.10.6//:digest",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.siphasher-0.3.10.bazel b/crate_universe/3rdparty/crates/BUILD.siphasher-0.3.10.bazel
index 85d9d68..771fa3a 100644
--- a/crate_universe/3rdparty/crates/BUILD.siphasher-0.3.10.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.siphasher-0.3.10.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "siphasher",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "0.3.10",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.slug-0.1.4.bazel b/crate_universe/3rdparty/crates/BUILD.slug-0.1.4.bazel
index 67e775d..ddc39f0 100644
--- a/crate_universe/3rdparty/crates/BUILD.slug-0.1.4.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.slug-0.1.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "slug",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.1.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__deunicode-0.4.3//:deunicode",
-        ],
-    }),
+        "@cui__deunicode-0.4.3//:deunicode",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.smallvec-1.10.0.bazel b/crate_universe/3rdparty/crates/BUILD.smallvec-1.10.0.bazel
index 38e465d..d6f0ab8 100644
--- a/crate_universe/3rdparty/crates/BUILD.smallvec-1.10.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.smallvec-1.10.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "smallvec",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.10.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.smartstring-1.0.1.bazel b/crate_universe/3rdparty/crates/BUILD.smartstring-1.0.1.bazel
index 74993da..8dc9295 100644
--- a/crate_universe/3rdparty/crates/BUILD.smartstring-1.0.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.smartstring-1.0.1.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "smartstring",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "serde",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,35 +47,15 @@
     ],
     version = "1.0.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__serde-1.0.152//:serde",
-            "@cui__smartstring-1.0.1//:build_script_build",
-            "@cui__static_assertions-1.1.0//:static_assertions",
-        ],
-    }),
+        "@cui__serde-1.0.152//:serde",
+        "@cui__smartstring-1.0.1//:build_script_build",
+        "@cui__static_assertions-1.1.0//:static_assertions",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "smartstring_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "serde",
@@ -127,32 +67,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -161,30 +83,16 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.1",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__autocfg-1.1.0//:autocfg",
-            "@cui__version_check-0.9.4//:version_check",
-        ],
-    }),
+        "@cui__autocfg-1.1.0//:autocfg",
+        "@cui__version_check-0.9.4//:version_check",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "smartstring_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.smawk-0.3.1.bazel b/crate_universe/3rdparty/crates/BUILD.smawk-0.3.1.bazel
index 5911160..1fa3a49 100644
--- a/crate_universe/3rdparty/crates/BUILD.smawk-0.3.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.smawk-0.3.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "smawk",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.spectral-0.6.0.bazel b/crate_universe/3rdparty/crates/BUILD.spectral-0.6.0.bazel
index a221b5c..bd1a0df 100644
--- a/crate_universe/3rdparty/crates/BUILD.spectral-0.6.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.spectral-0.6.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "spectral",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "num",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.6.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__num-0.1.42//:num",
-        ],
-    }),
+        "@cui__num-0.1.42//:num",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.static_assertions-1.1.0.bazel b/crate_universe/3rdparty/crates/BUILD.static_assertions-1.1.0.bazel
index 50021d8..c6a5afb 100644
--- a/crate_universe/3rdparty/crates/BUILD.static_assertions-1.1.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.static_assertions-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "static_assertions",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.strsim-0.10.0.bazel b/crate_universe/3rdparty/crates/BUILD.strsim-0.10.0.bazel
index 30ee7bc..def6792 100644
--- a/crate_universe/3rdparty/crates/BUILD.strsim-0.10.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.strsim-0.10.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "strsim",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.10.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.syn-1.0.107.bazel b/crate_universe/3rdparty/crates/BUILD.syn-1.0.107.bazel
index 6998547..c49ffb9 100644
--- a/crate_universe/3rdparty/crates/BUILD.syn-1.0.107.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.syn-1.0.107.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "syn",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "clone-impls",
         "default",
@@ -62,29 +43,8 @@
         "visit",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -93,36 +53,16 @@
     ],
     version = "1.0.107",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__proc-macro2-1.0.49//:proc_macro2",
-            "@cui__quote-1.0.23//:quote",
-            "@cui__syn-1.0.107//:build_script_build",
-            "@cui__unicode-ident-1.0.6//:unicode_ident",
-        ],
-    }),
+        "@cui__proc-macro2-1.0.49//:proc_macro2",
+        "@cui__quote-1.0.23//:quote",
+        "@cui__syn-1.0.107//:build_script_build",
+        "@cui__unicode-ident-1.0.6//:unicode_ident",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "syn_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "clone-impls",
         "default",
@@ -140,32 +80,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -174,28 +96,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.107",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "syn_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.tempfile-3.3.0.bazel b/crate_universe/3rdparty/crates/BUILD.tempfile-3.3.0.bazel
index cd5707c..7e5e539 100644
--- a/crate_universe/3rdparty/crates/BUILD.tempfile-3.3.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.tempfile-3.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tempfile",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,149 +41,79 @@
     ],
     version = "3.3.0",
     deps = [
+        "@cui__cfg-if-1.0.0//:cfg_if",
+        "@cui__fastrand-1.8.0//:fastrand",
+        "@cui__remove_dir_all-0.5.3//:remove_dir_all",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@cui__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@cui__fastrand-1.8.0//:fastrand",  # common dependency
             "@cui__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
-        "//conditions:default": [
-            "@cui__cfg-if-1.0.0//:cfg_if",
-            "@cui__fastrand-1.8.0//:fastrand",
-            "@cui__remove_dir_all-0.5.3//:remove_dir_all",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.tera-1.17.1.bazel b/crate_universe/3rdparty/crates/BUILD.tera-1.17.1.bazel
index a6ef2a1..292436d 100644
--- a/crate_universe/3rdparty/crates/BUILD.tera-1.17.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.tera-1.17.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "tera",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "builtins",
         "chrono",
@@ -57,30 +42,11 @@
         "urlencode",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__pest_derive-2.5.2//:pest_derive",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@cui__pest_derive-2.5.2//:pest_derive",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -89,21 +55,18 @@
     ],
     version = "1.17.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__chrono-0.4.23//:chrono",
-            "@cui__chrono-tz-0.6.3//:chrono_tz",
-            "@cui__globwalk-0.8.1//:globwalk",
-            "@cui__humansize-1.1.1//:humansize",
-            "@cui__lazy_static-1.4.0//:lazy_static",
-            "@cui__percent-encoding-2.2.0//:percent_encoding",
-            "@cui__pest-2.5.2//:pest",
-            "@cui__rand-0.8.5//:rand",
-            "@cui__regex-1.7.0//:regex",
-            "@cui__serde-1.0.152//:serde",
-            "@cui__serde_json-1.0.91//:serde_json",
-            "@cui__slug-0.1.4//:slug",
-            "@cui__unic-segment-0.9.0//:unic_segment",
-        ],
-    }),
+        "@cui__chrono-0.4.23//:chrono",
+        "@cui__chrono-tz-0.6.3//:chrono_tz",
+        "@cui__globwalk-0.8.1//:globwalk",
+        "@cui__humansize-1.1.1//:humansize",
+        "@cui__lazy_static-1.4.0//:lazy_static",
+        "@cui__percent-encoding-2.2.0//:percent_encoding",
+        "@cui__pest-2.5.2//:pest",
+        "@cui__rand-0.8.5//:rand",
+        "@cui__regex-1.7.0//:regex",
+        "@cui__serde-1.0.152//:serde",
+        "@cui__serde_json-1.0.91//:serde_json",
+        "@cui__slug-0.1.4//:slug",
+        "@cui__unic-segment-0.9.0//:unic_segment",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.termcolor-1.1.3.bazel b/crate_universe/3rdparty/crates/BUILD.termcolor-1.1.3.bazel
index f191bcb..5ba758b 100644
--- a/crate_universe/3rdparty/crates/BUILD.termcolor-1.1.3.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.termcolor-1.1.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "termcolor",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "1.1.3",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@cui__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@cui__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.textwrap-0.16.0.bazel b/crate_universe/3rdparty/crates/BUILD.textwrap-0.16.0.bazel
index 6c188f6..f61ee37 100644
--- a/crate_universe/3rdparty/crates/BUILD.textwrap-0.16.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.textwrap-0.16.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "textwrap",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "smawk",
@@ -52,29 +37,8 @@
         "unicode-width",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -83,11 +47,8 @@
     ],
     version = "0.16.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__smawk-0.3.1//:smawk",
-            "@cui__unicode-linebreak-0.1.4//:unicode_linebreak",
-            "@cui__unicode-width-0.1.10//:unicode_width",
-        ],
-    }),
+        "@cui__smawk-0.3.1//:smawk",
+        "@cui__unicode-linebreak-0.1.4//:unicode_linebreak",
+        "@cui__unicode-width-0.1.10//:unicode_width",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.thiserror-1.0.38.bazel b/crate_universe/3rdparty/crates/BUILD.thiserror-1.0.38.bazel
index b22fcf4..454caab 100644
--- a/crate_universe/3rdparty/crates/BUILD.thiserror-1.0.38.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.thiserror-1.0.38.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,23 @@
 
 rust_library(
     name = "thiserror",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__thiserror-impl-1.0.38//:thiserror_impl",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@cui__thiserror-impl-1.0.38//:thiserror_impl",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,67 +45,27 @@
     ],
     version = "1.0.38",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__thiserror-1.0.38//:build_script_build",
-        ],
-    }),
+        "@cui__thiserror-1.0.38//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "thiserror_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,28 +74,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.38",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "thiserror_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.thiserror-impl-1.0.38.bazel b/crate_universe/3rdparty/crates/BUILD.thiserror-impl-1.0.38.bazel
index 9c12c14..92215e6 100644
--- a/crate_universe/3rdparty/crates/BUILD.thiserror-impl-1.0.38.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.thiserror-impl-1.0.38.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,56 +19,20 @@
 
 rust_proc_macro(
     name = "thiserror_impl",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "1.0.38",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__proc-macro2-1.0.49//:proc_macro2",
-            "@cui__quote-1.0.23//:quote",
-            "@cui__syn-1.0.107//:syn",
-        ],
-    }),
+        "@cui__proc-macro2-1.0.49//:proc_macro2",
+        "@cui__quote-1.0.23//:quote",
+        "@cui__syn-1.0.107//:syn",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.thread_local-1.1.4.bazel b/crate_universe/3rdparty/crates/BUILD.thread_local-1.1.4.bazel
index 9916c8d..11809b3 100644
--- a/crate_universe/3rdparty/crates/BUILD.thread_local-1.1.4.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.thread_local-1.1.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "thread_local",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "1.1.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__once_cell-1.17.0//:once_cell",
-        ],
-    }),
+        "@cui__once_cell-1.17.0//:once_cell",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.tinyvec-1.6.0.bazel b/crate_universe/3rdparty/crates/BUILD.tinyvec-1.6.0.bazel
index 0f5f857..f29553e 100644
--- a/crate_universe/3rdparty/crates/BUILD.tinyvec-1.6.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.tinyvec-1.6.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "tinyvec",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
         "tinyvec_macros",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,6 @@
     ],
     version = "1.6.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__tinyvec_macros-0.1.0//:tinyvec_macros",
-        ],
-    }),
+        "@cui__tinyvec_macros-0.1.0//:tinyvec_macros",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.tinyvec_macros-0.1.0.bazel b/crate_universe/3rdparty/crates/BUILD.tinyvec_macros-0.1.0.bazel
index 5310399..fc4cadf 100644
--- a/crate_universe/3rdparty/crates/BUILD.tinyvec_macros-0.1.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.tinyvec_macros-0.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tinyvec_macros",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.toml-0.5.10.bazel b/crate_universe/3rdparty/crates/BUILD.toml-0.5.10.bazel
index fc07f4e..bc12b41 100644
--- a/crate_universe/3rdparty/crates/BUILD.toml-0.5.10.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.toml-0.5.10.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "toml",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.5.10",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__serde-1.0.152//:serde",
-        ],
-    }),
+        "@cui__serde-1.0.152//:serde",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.typenum-1.16.0.bazel b/crate_universe/3rdparty/crates/BUILD.typenum-1.16.0.bazel
index a7a0d0b..c6bd09d 100644
--- a/crate_universe/3rdparty/crates/BUILD.typenum-1.16.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.typenum-1.16.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "typenum",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "1.16.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__typenum-1.16.0//:build_script_main",
-        ],
-    }),
+        "@cui__typenum-1.16.0//:build_script_main",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "typenum_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_main",
     crate_root = "build/main.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.16.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_main",
     actual = "typenum_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.ucd-trie-0.1.5.bazel b/crate_universe/3rdparty/crates/BUILD.ucd-trie-0.1.5.bazel
index 51a947f..b48cf39 100644
--- a/crate_universe/3rdparty/crates/BUILD.ucd-trie-0.1.5.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.ucd-trie-0.1.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "ucd_trie",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.1.5",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.uncased-0.9.7.bazel b/crate_universe/3rdparty/crates/BUILD.uncased-0.9.7.bazel
index c3bb0db..fc73855 100644
--- a/crate_universe/3rdparty/crates/BUILD.uncased-0.9.7.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.uncased-0.9.7.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "uncased",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.9.7",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__uncased-0.9.7//:build_script_build",
-        ],
-    }),
+        "@cui__uncased-0.9.7//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "uncased_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,29 +71,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.9.7",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__version_check-0.9.4//:version_check",
-        ],
-    }),
+        "@cui__version_check-0.9.4//:version_check",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "uncased_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.unic-char-property-0.9.0.bazel b/crate_universe/3rdparty/crates/BUILD.unic-char-property-0.9.0.bazel
index 823f8e5..8675c82 100644
--- a/crate_universe/3rdparty/crates/BUILD.unic-char-property-0.9.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.unic-char-property-0.9.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "unic_char_property",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.9.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__unic-char-range-0.9.0//:unic_char_range",
-        ],
-    }),
+        "@cui__unic-char-range-0.9.0//:unic_char_range",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.unic-char-range-0.9.0.bazel b/crate_universe/3rdparty/crates/BUILD.unic-char-range-0.9.0.bazel
index b290a77..e97d7e3 100644
--- a/crate_universe/3rdparty/crates/BUILD.unic-char-range-0.9.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.unic-char-range-0.9.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "unic_char_range",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.9.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.unic-common-0.9.0.bazel b/crate_universe/3rdparty/crates/BUILD.unic-common-0.9.0.bazel
index 3f4b079..3cc09a9 100644
--- a/crate_universe/3rdparty/crates/BUILD.unic-common-0.9.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.unic-common-0.9.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "unic_common",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.9.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.unic-segment-0.9.0.bazel b/crate_universe/3rdparty/crates/BUILD.unic-segment-0.9.0.bazel
index c584260..f3fe262 100644
--- a/crate_universe/3rdparty/crates/BUILD.unic-segment-0.9.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.unic-segment-0.9.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "unic_segment",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.9.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__unic-ucd-segment-0.9.0//:unic_ucd_segment",
-        ],
-    }),
+        "@cui__unic-ucd-segment-0.9.0//:unic_ucd_segment",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.unic-ucd-segment-0.9.0.bazel b/crate_universe/3rdparty/crates/BUILD.unic-ucd-segment-0.9.0.bazel
index d63c20a..cb9ecc9 100644
--- a/crate_universe/3rdparty/crates/BUILD.unic-ucd-segment-0.9.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.unic-ucd-segment-0.9.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "unic_ucd_segment",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.9.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__unic-char-property-0.9.0//:unic_char_property",
-            "@cui__unic-char-range-0.9.0//:unic_char_range",
-            "@cui__unic-ucd-version-0.9.0//:unic_ucd_version",
-        ],
-    }),
+        "@cui__unic-char-property-0.9.0//:unic_char_property",
+        "@cui__unic-char-range-0.9.0//:unic_char_range",
+        "@cui__unic-ucd-version-0.9.0//:unic_ucd_version",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.unic-ucd-version-0.9.0.bazel b/crate_universe/3rdparty/crates/BUILD.unic-ucd-version-0.9.0.bazel
index 2aa79ef..96f41f9 100644
--- a/crate_universe/3rdparty/crates/BUILD.unic-ucd-version-0.9.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.unic-ucd-version-0.9.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "unic_ucd_version",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.9.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__unic-common-0.9.0//:unic_common",
-        ],
-    }),
+        "@cui__unic-common-0.9.0//:unic_common",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.unicode-bidi-0.3.8.bazel b/crate_universe/3rdparty/crates/BUILD.unicode-bidi-0.3.8.bazel
index b91e537..bcebf03 100644
--- a/crate_universe/3rdparty/crates/BUILD.unicode-bidi-0.3.8.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.unicode-bidi-0.3.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "unicode_bidi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "hardcoded-data",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,4 @@
         "norustfmt",
     ],
     version = "0.3.8",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel b/crate_universe/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel
index 15119f9..9ed8fc2 100644
--- a/crate_universe/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "unicode_ident",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.6",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.unicode-linebreak-0.1.4.bazel b/crate_universe/3rdparty/crates/BUILD.unicode-linebreak-0.1.4.bazel
index 81b50ca..7343a2e 100644
--- a/crate_universe/3rdparty/crates/BUILD.unicode-linebreak-0.1.4.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.unicode-linebreak-0.1.4.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "unicode_linebreak",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.1.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__unicode-linebreak-0.1.4//:build_script_build",
-        ],
-    }),
+        "@cui__unicode-linebreak-0.1.4//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "unicode-linebreak_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,30 +71,16 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.1.4",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__hashbrown-0.12.3//:hashbrown",
-            "@cui__regex-1.7.0//:regex",
-        ],
-    }),
+        "@cui__hashbrown-0.12.3//:hashbrown",
+        "@cui__regex-1.7.0//:regex",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "unicode-linebreak_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.unicode-normalization-0.1.22.bazel b/crate_universe/3rdparty/crates/BUILD.unicode-normalization-0.1.22.bazel
index 58daa43..ac369e0 100644
--- a/crate_universe/3rdparty/crates/BUILD.unicode-normalization-0.1.22.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.unicode-normalization-0.1.22.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "unicode_normalization",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.1.22",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__tinyvec-1.6.0//:tinyvec",
-        ],
-    }),
+        "@cui__tinyvec-1.6.0//:tinyvec",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.unicode-width-0.1.10.bazel b/crate_universe/3rdparty/crates/BUILD.unicode-width-0.1.10.bazel
index 164f9e0..ac7ab9d 100644
--- a/crate_universe/3rdparty/crates/BUILD.unicode-width-0.1.10.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.unicode-width-0.1.10.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "unicode_width",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.1.10",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.url-2.3.1.bazel b/crate_universe/3rdparty/crates/BUILD.url-2.3.1.bazel
index 8f5bbae..a91755c 100644
--- a/crate_universe/3rdparty/crates/BUILD.url-2.3.1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.url-2.3.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "url",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,11 +42,8 @@
     ],
     version = "2.3.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__form_urlencoded-1.1.0//:form_urlencoded",
-            "@cui__idna-0.3.0//:idna",
-            "@cui__percent-encoding-2.2.0//:percent_encoding",
-        ],
-    }),
+        "@cui__form_urlencoded-1.1.0//:form_urlencoded",
+        "@cui__idna-0.3.0//:idna",
+        "@cui__percent-encoding-2.2.0//:percent_encoding",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.vcpkg-0.2.15.bazel b/crate_universe/3rdparty/crates/BUILD.vcpkg-0.2.15.bazel
index 0336272..adbf157 100644
--- a/crate_universe/3rdparty/crates/BUILD.vcpkg-0.2.15.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.vcpkg-0.2.15.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "vcpkg",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.2.15",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.version_check-0.9.4.bazel b/crate_universe/3rdparty/crates/BUILD.version_check-0.9.4.bazel
index 20a1fd2..48daa7d 100644
--- a/crate_universe/3rdparty/crates/BUILD.version_check-0.9.4.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.version_check-0.9.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "version_check",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.9.4",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.walkdir-2.3.2.bazel b/crate_universe/3rdparty/crates/BUILD.walkdir-2.3.2.bazel
index 7bf3dd6..fd7a11a 100644
--- a/crate_universe/3rdparty/crates/BUILD.walkdir-2.3.2.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.walkdir-2.3.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "walkdir",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,24 +41,20 @@
     ],
     version = "2.3.2",
     deps = [
+        "@cui__same-file-1.0.6//:same_file",
     ] + select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@cui__same-file-1.0.6//:same_file",  # common dependency
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
             "@cui__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@cui__same-file-1.0.6//:same_file",  # common dependency
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
             "@cui__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@cui__same-file-1.0.6//:same_file",  # common dependency
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
             "@cui__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
-        "//conditions:default": [
-            "@cui__same-file-1.0.6//:same_file",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel b/crate_universe/3rdparty/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel
index fbbb554..4f7a6e3 100644
--- a/crate_universe/3rdparty/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "wasi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "0.11.0+wasi-snapshot-preview1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-0.2.83.bazel b/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-0.2.83.bazel
index 507d9bb..f3a12c8 100644
--- a/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-0.2.83.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-0.2.83.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,60 +20,28 @@
 
 rust_library(
     name = "wasm_bindgen",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "spans",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__wasm-bindgen-macro-0.2.83//:wasm_bindgen_macro",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@cui__wasm-bindgen-macro-0.2.83//:wasm_bindgen_macro",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -88,34 +50,14 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__cfg-if-1.0.0//:cfg_if",
-            "@cui__wasm-bindgen-0.2.83//:build_script_build",
-        ],
-    }),
+        "@cui__cfg-if-1.0.0//:cfg_if",
+        "@cui__wasm-bindgen-0.2.83//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "wasm-bindgen_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "spans",
@@ -127,32 +69,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -161,28 +85,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.83",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "wasm-bindgen_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-backend-0.2.83.bazel b/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-backend-0.2.83.bazel
index 014309c..4a834d6 100644
--- a/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-backend-0.2.83.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-backend-0.2.83.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "wasm_bindgen_backend",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "spans",
-    ],
+    ),
+    crate_features = ["spans"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,15 +42,12 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__bumpalo-3.11.1//:bumpalo",
-            "@cui__log-0.4.17//:log",
-            "@cui__once_cell-1.17.0//:once_cell",
-            "@cui__proc-macro2-1.0.49//:proc_macro2",
-            "@cui__quote-1.0.23//:quote",
-            "@cui__syn-1.0.107//:syn",
-            "@cui__wasm-bindgen-shared-0.2.83//:wasm_bindgen_shared",
-        ],
-    }),
+        "@cui__bumpalo-3.11.1//:bumpalo",
+        "@cui__log-0.4.17//:log",
+        "@cui__once_cell-1.17.0//:once_cell",
+        "@cui__proc-macro2-1.0.49//:proc_macro2",
+        "@cui__quote-1.0.23//:quote",
+        "@cui__syn-1.0.107//:syn",
+        "@cui__wasm-bindgen-shared-0.2.83//:wasm_bindgen_shared",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-macro-0.2.83.bazel b/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-macro-0.2.83.bazel
index 1544940..32137ee 100644
--- a/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-macro-0.2.83.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-macro-0.2.83.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,57 +19,21 @@
 
 rust_proc_macro(
     name = "wasm_bindgen_macro",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "spans",
-    ],
+    ),
+    crate_features = ["spans"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,10 +42,7 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__quote-1.0.23//:quote",
-            "@cui__wasm-bindgen-macro-support-0.2.83//:wasm_bindgen_macro_support",
-        ],
-    }),
+        "@cui__quote-1.0.23//:quote",
+        "@cui__wasm-bindgen-macro-support-0.2.83//:wasm_bindgen_macro_support",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-macro-support-0.2.83.bazel b/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-macro-support-0.2.83.bazel
index 5d38f71..162488d 100644
--- a/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-macro-support-0.2.83.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-macro-support-0.2.83.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "wasm_bindgen_macro_support",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "spans",
-    ],
+    ),
+    crate_features = ["spans"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,13 +42,10 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__proc-macro2-1.0.49//:proc_macro2",
-            "@cui__quote-1.0.23//:quote",
-            "@cui__syn-1.0.107//:syn",
-            "@cui__wasm-bindgen-backend-0.2.83//:wasm_bindgen_backend",
-            "@cui__wasm-bindgen-shared-0.2.83//:wasm_bindgen_shared",
-        ],
-    }),
+        "@cui__proc-macro2-1.0.49//:proc_macro2",
+        "@cui__quote-1.0.23//:quote",
+        "@cui__syn-1.0.107//:syn",
+        "@cui__wasm-bindgen-backend-0.2.83//:wasm_bindgen_backend",
+        "@cui__wasm-bindgen-shared-0.2.83//:wasm_bindgen_shared",
+    ],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-shared-0.2.83.bazel b/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-shared-0.2.83.bazel
index 6b09804..9e53118 100644
--- a/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-shared-0.2.83.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.wasm-bindgen-shared-0.2.83.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "wasm_bindgen_shared",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__wasm-bindgen-shared-0.2.83//:build_script_build",
-        ],
-    }),
+        "@cui__wasm-bindgen-shared-0.2.83//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "wasm-bindgen-shared_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
     links = "wasm_bindgen",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,28 +72,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.83",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "wasm-bindgen-shared_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.winapi-0.3.9.bazel b/crate_universe/3rdparty/crates/BUILD.winapi-0.3.9.bazel
index cfe87f1..fd847f1 100644
--- a/crate_universe/3rdparty/crates/BUILD.winapi-0.3.9.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.winapi-0.3.9.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "winapi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "activation",
         "combaseapi",
@@ -75,29 +56,8 @@
         "winstring",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -106,33 +66,13 @@
     ],
     version = "0.3.9",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__winapi-0.3.9//:build_script_build",
-        ],
-    }),
+        "@cui__winapi-0.3.9//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "activation",
         "combaseapi",
@@ -163,32 +103,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -197,28 +119,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.9",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel b/crate_universe/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
index ecc405f..3d37df8 100644
--- a/crate_universe/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_i686_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__winapi-i686-pc-windows-gnu-0.4.0//:build_script_build",
-        ],
-    }),
+        "@cui__winapi-i686-pc-windows-gnu-0.4.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-i686-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-i686-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel b/crate_universe/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel
index cfb8aa3..00d9abe 100644
--- a/crate_universe/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "winapi_util",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.1.5",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@cui__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel b/crate_universe/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
index f4315ea..229bacc 100644
--- a/crate_universe/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_x86_64_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__winapi-x86_64-pc-windows-gnu-0.4.0//:build_script_build",
-        ],
-    }),
+        "@cui__winapi-x86_64-pc-windows-gnu-0.4.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-x86_64-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-x86_64-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.windows-sys-0.42.0.bazel b/crate_universe/3rdparty/crates/BUILD.windows-sys-0.42.0.bazel
index d07232a..e04741a 100644
--- a/crate_universe/3rdparty/crates/BUILD.windows-sys-0.42.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.windows-sys-0.42.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "windows_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "Win32",
         "Win32_Foundation",
@@ -62,29 +47,8 @@
         "default",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -92,8 +56,7 @@
         "norustfmt",
     ],
     version = "0.42.0",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@cui__windows_aarch64_msvc-0.42.0//:windows_aarch64_msvc",  # aarch64-pc-windows-msvc
         ],
@@ -103,7 +66,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@cui__windows_x86_64_msvc-0.42.0//:windows_x86_64_msvc",  # x86_64-pc-windows-msvc
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.windows_aarch64_gnullvm-0.42.0.bazel b/crate_universe/3rdparty/crates/BUILD.windows_aarch64_gnullvm-0.42.0.bazel
index 0dae304..d933f8f 100644
--- a/crate_universe/3rdparty/crates/BUILD.windows_aarch64_gnullvm-0.42.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.windows_aarch64_gnullvm-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_aarch64_gnullvm",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__windows_aarch64_gnullvm-0.42.0//:build_script_build",
-        ],
-    }),
+        "@cui__windows_aarch64_gnullvm-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_aarch64_gnullvm_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_aarch64_gnullvm_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.windows_aarch64_msvc-0.42.0.bazel b/crate_universe/3rdparty/crates/BUILD.windows_aarch64_msvc-0.42.0.bazel
index e1df3e0..a25ac91 100644
--- a/crate_universe/3rdparty/crates/BUILD.windows_aarch64_msvc-0.42.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.windows_aarch64_msvc-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_aarch64_msvc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__windows_aarch64_msvc-0.42.0//:build_script_build",
-        ],
-    }),
+        "@cui__windows_aarch64_msvc-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_aarch64_msvc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_aarch64_msvc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.windows_i686_gnu-0.42.0.bazel b/crate_universe/3rdparty/crates/BUILD.windows_i686_gnu-0.42.0.bazel
index 0874189..5ab7f6b 100644
--- a/crate_universe/3rdparty/crates/BUILD.windows_i686_gnu-0.42.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.windows_i686_gnu-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_i686_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__windows_i686_gnu-0.42.0//:build_script_build",
-        ],
-    }),
+        "@cui__windows_i686_gnu-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_i686_gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_i686_gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.windows_i686_msvc-0.42.0.bazel b/crate_universe/3rdparty/crates/BUILD.windows_i686_msvc-0.42.0.bazel
index 2d1ca45..34f590c 100644
--- a/crate_universe/3rdparty/crates/BUILD.windows_i686_msvc-0.42.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.windows_i686_msvc-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_i686_msvc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__windows_i686_msvc-0.42.0//:build_script_build",
-        ],
-    }),
+        "@cui__windows_i686_msvc-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_i686_msvc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_i686_msvc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.windows_x86_64_gnu-0.42.0.bazel b/crate_universe/3rdparty/crates/BUILD.windows_x86_64_gnu-0.42.0.bazel
index 08c17e4..f144381 100644
--- a/crate_universe/3rdparty/crates/BUILD.windows_x86_64_gnu-0.42.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.windows_x86_64_gnu-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_x86_64_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__windows_x86_64_gnu-0.42.0//:build_script_build",
-        ],
-    }),
+        "@cui__windows_x86_64_gnu-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_x86_64_gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_x86_64_gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.windows_x86_64_gnullvm-0.42.0.bazel b/crate_universe/3rdparty/crates/BUILD.windows_x86_64_gnullvm-0.42.0.bazel
index 446d818..32fe597 100644
--- a/crate_universe/3rdparty/crates/BUILD.windows_x86_64_gnullvm-0.42.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.windows_x86_64_gnullvm-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_x86_64_gnullvm",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__windows_x86_64_gnullvm-0.42.0//:build_script_build",
-        ],
-    }),
+        "@cui__windows_x86_64_gnullvm-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_x86_64_gnullvm_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_x86_64_gnullvm_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/crate_universe/3rdparty/crates/BUILD.windows_x86_64_msvc-0.42.0.bazel b/crate_universe/3rdparty/crates/BUILD.windows_x86_64_msvc-0.42.0.bazel
index 6e64671..c0b99ed 100644
--- a/crate_universe/3rdparty/crates/BUILD.windows_x86_64_msvc-0.42.0.bazel
+++ b/crate_universe/3rdparty/crates/BUILD.windows_x86_64_msvc-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//crate_universe/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_x86_64_msvc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@cui__windows_x86_64_msvc-0.42.0//:build_script_build",
-        ],
-    }),
+        "@cui__windows_x86_64_msvc-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_x86_64_msvc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_x86_64_msvc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.atty-0.2.14.bazel b/examples/crate_universe/vendor_external/crates/BUILD.atty-0.2.14.bazel
index 0ad4fed..ce1ef9f 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.atty-0.2.14.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.atty-0.2.14.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "atty",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.2.14",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
@@ -146,7 +107,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.autocfg-1.1.0.bazel b/examples/crate_universe/vendor_external/crates/BUILD.autocfg-1.1.0.bazel
index 73011be..0409501 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.autocfg-1.1.0.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.autocfg-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "autocfg",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.bazel b/examples/crate_universe/vendor_external/crates/BUILD.bazel
index 18c9cf5..a4e6787 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.bazel
@@ -13,21 +13,15 @@
         "cargo-bazel.json",
         "crates.bzl",
         "defs.bzl",
-    ] + glob(
-        include = ["*.bazel"],
-        exclude = [],
-    ),
+    ] + glob(["*.bazel"]),
 )
 
 filegroup(
     name = "srcs",
-    srcs = glob(
-        include = [
-            "*.bazel",
-            "*.bzl",
-        ],
-        exclude = [],
-    ),
+    srcs = glob([
+        "*.bazel",
+        "*.bzl",
+    ]),
 )
 
 # Workspace Member Dependencies
@@ -54,10 +48,3 @@
     actual = "@crates_vendor__version-sync-0.9.4//:version_sync",
     tags = ["manual"],
 )
-
-# Binaries
-alias(
-    name = "pulldown-cmark__pulldown-cmark",
-    actual = "@crates_vendor__pulldown-cmark-0.8.0//:pulldown-cmark__bin",
-    tags = ["manual"],
-)
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.bitflags-1.3.2.bazel b/examples/crate_universe/vendor_external/crates/BUILD.bitflags-1.3.2.bazel
index 0637a1f..ff2b64a 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.bitflags-1.3.2.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.bitflags-1.3.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "bitflags",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "1.3.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.cfg-if-1.0.0.bazel b/examples/crate_universe/vendor_external/crates/BUILD.cfg-if-1.0.0.bazel
index d341693..5a8e01c 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.cfg-if-1.0.0.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.cfg-if-1.0.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cfg_if",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.clap-3.1.5.bazel b/examples/crate_universe/vendor_external/crates/BUILD.clap-3.1.5.bazel
index d3b4581..88ab4fd 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.clap-3.1.5.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.clap-3.1.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "clap",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "atty",
         "clap_derive",
@@ -58,30 +43,11 @@
         "termcolor",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__clap_derive-3.1.4//:clap_derive",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@crates_vendor__clap_derive-3.1.4//:clap_derive",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -90,16 +56,13 @@
     ],
     version = "3.1.5",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__atty-0.2.14//:atty",
-            "@crates_vendor__bitflags-1.3.2//:bitflags",
-            "@crates_vendor__indexmap-1.8.0//:indexmap",
-            "@crates_vendor__lazy_static-1.4.0//:lazy_static",
-            "@crates_vendor__os_str_bytes-6.0.0//:os_str_bytes",
-            "@crates_vendor__strsim-0.10.0//:strsim",
-            "@crates_vendor__termcolor-1.1.3//:termcolor",
-            "@crates_vendor__textwrap-0.15.0//:textwrap",
-        ],
-    }),
+        "@crates_vendor__atty-0.2.14//:atty",
+        "@crates_vendor__bitflags-1.3.2//:bitflags",
+        "@crates_vendor__indexmap-1.8.0//:indexmap",
+        "@crates_vendor__lazy_static-1.4.0//:lazy_static",
+        "@crates_vendor__os_str_bytes-6.0.0//:os_str_bytes",
+        "@crates_vendor__strsim-0.10.0//:strsim",
+        "@crates_vendor__termcolor-1.1.3//:termcolor",
+        "@crates_vendor__textwrap-0.15.0//:textwrap",
+    ],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.clap_derive-3.1.4.bazel b/examples/crate_universe/vendor_external/crates/BUILD.clap_derive-3.1.4.bazel
index 50456b1..3a746d3 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.clap_derive-3.1.4.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.clap_derive-3.1.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,57 +19,21 @@
 
 rust_proc_macro(
     name = "clap_derive",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,13 +42,10 @@
     ],
     version = "3.1.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__heck-0.4.0//:heck",
-            "@crates_vendor__proc-macro-error-1.0.4//:proc_macro_error",
-            "@crates_vendor__proc-macro2-1.0.36//:proc_macro2",
-            "@crates_vendor__quote-1.0.15//:quote",
-            "@crates_vendor__syn-1.0.86//:syn",
-        ],
-    }),
+        "@crates_vendor__heck-0.4.0//:heck",
+        "@crates_vendor__proc-macro-error-1.0.4//:proc_macro_error",
+        "@crates_vendor__proc-macro2-1.0.36//:proc_macro2",
+        "@crates_vendor__quote-1.0.15//:quote",
+        "@crates_vendor__syn-1.0.86//:syn",
+    ],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.form_urlencoded-1.0.1.bazel b/examples/crate_universe/vendor_external/crates/BUILD.form_urlencoded-1.0.1.bazel
index bc44ab7..9555ba4 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.form_urlencoded-1.0.1.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.form_urlencoded-1.0.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "form_urlencoded",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "1.0.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__matches-0.1.9//:matches",
-            "@crates_vendor__percent-encoding-2.1.0//:percent_encoding",
-        ],
-    }),
+        "@crates_vendor__matches-0.1.9//:matches",
+        "@crates_vendor__percent-encoding-2.1.0//:percent_encoding",
+    ],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.getrandom-0.2.5.bazel b/examples/crate_universe/vendor_external/crates/BUILD.getrandom-0.2.5.bazel
index 28e5edd..10fd33f 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.getrandom-0.2.5.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.getrandom-0.2.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "getrandom",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,89 +42,68 @@
     ],
     version = "0.2.5",
     deps = [
+        "@crates_vendor__cfg-if-1.0.0//:cfg_if",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__wasi-0.10.2-wasi-snapshot-preview1//:wasi",  # cfg(target_os = "wasi")
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-            "@crates_vendor__cfg-if-1.0.0//:cfg_if",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.hashbrown-0.11.2.bazel b/examples/crate_universe/vendor_external/crates/BUILD.hashbrown-0.11.2.bazel
index 5e3a3c2..cbdb3f2 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.hashbrown-0.11.2.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.hashbrown-0.11.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hashbrown",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "raw",
-    ],
+    ),
+    crate_features = ["raw"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.11.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.heck-0.4.0.bazel b/examples/crate_universe/vendor_external/crates/BUILD.heck-0.4.0.bazel
index f5edf93..d9fa498 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.heck-0.4.0.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.heck-0.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "heck",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.4.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.hermit-abi-0.1.19.bazel b/examples/crate_universe/vendor_external/crates/BUILD.hermit-abi-0.1.19.bazel
index 59f9799..301371f 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.hermit-abi-0.1.19.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.hermit-abi-0.1.19.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hermit_abi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.1.19",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__libc-0.2.119//:libc",
-        ],
-    }),
+        "@crates_vendor__libc-0.2.119//:libc",
+    ],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.idna-0.2.3.bazel b/examples/crate_universe/vendor_external/crates/BUILD.idna-0.2.3.bazel
index 76234aa..c90d051 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.idna-0.2.3.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.idna-0.2.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "idna",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.2.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__matches-0.1.9//:matches",
-            "@crates_vendor__unicode-bidi-0.3.7//:unicode_bidi",
-            "@crates_vendor__unicode-normalization-0.1.19//:unicode_normalization",
-        ],
-    }),
+        "@crates_vendor__matches-0.1.9//:matches",
+        "@crates_vendor__unicode-bidi-0.3.7//:unicode_bidi",
+        "@crates_vendor__unicode-normalization-0.1.19//:unicode_normalization",
+    ],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.indexmap-1.8.0.bazel b/examples/crate_universe/vendor_external/crates/BUILD.indexmap-1.8.0.bazel
index 1366d79..0b85fd3 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.indexmap-1.8.0.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.indexmap-1.8.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "indexmap",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,69 +43,29 @@
     ],
     version = "1.8.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__hashbrown-0.11.2//:hashbrown",
-            "@crates_vendor__indexmap-1.8.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor__hashbrown-0.11.2//:hashbrown",
+        "@crates_vendor__indexmap-1.8.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "indexmap_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["std"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,29 +74,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.8.0",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@crates_vendor__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "indexmap_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.lazy_static-1.4.0.bazel b/examples/crate_universe/vendor_external/crates/BUILD.lazy_static-1.4.0.bazel
index ce002c2..0ef6c49 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.lazy_static-1.4.0.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.lazy_static-1.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "lazy_static",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.4.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.libc-0.2.119.bazel b/examples/crate_universe/vendor_external/crates/BUILD.libc-0.2.119.bazel
index 5a28043..5d59c0d 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.libc-0.2.119.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.libc-0.2.119.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "libc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.2.119",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__libc-0.2.119//:build_script_build",
-        ],
-    }),
+        "@crates_vendor__libc-0.2.119//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "libc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.119",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "libc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.matches-0.1.9.bazel b/examples/crate_universe/vendor_external/crates/BUILD.matches-0.1.9.bazel
index a164bff..6c197e6 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.matches-0.1.9.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.matches-0.1.9.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "matches",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.9",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.memchr-2.4.1.bazel b/examples/crate_universe/vendor_external/crates/BUILD.memchr-2.4.1.bazel
index 03ec3da..3f084eb 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.memchr-2.4.1.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.memchr-2.4.1.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "memchr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "2.4.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__memchr-2.4.1//:build_script_build",
-        ],
-    }),
+        "@crates_vendor__memchr-2.4.1//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "memchr_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "2.4.1",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "memchr_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.os_str_bytes-6.0.0.bazel b/examples/crate_universe/vendor_external/crates/BUILD.os_str_bytes-6.0.0.bazel
index b692a36..86d3824 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.os_str_bytes-6.0.0.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.os_str_bytes-6.0.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "os_str_bytes",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "memchr",
         "raw_os_str",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,6 @@
     ],
     version = "6.0.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__memchr-2.4.1//:memchr",
-        ],
-    }),
+        "@crates_vendor__memchr-2.4.1//:memchr",
+    ],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.percent-encoding-2.1.0.bazel b/examples/crate_universe/vendor_external/crates/BUILD.percent-encoding-2.1.0.bazel
index b6aed60..e6d22f9 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.percent-encoding-2.1.0.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.percent-encoding-2.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "percent_encoding",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "2.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.ppv-lite86-0.2.16.bazel b/examples/crate_universe/vendor_external/crates/BUILD.ppv-lite86-0.2.16.bazel
index ca31f34..7161790 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.ppv-lite86-0.2.16.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.ppv-lite86-0.2.16.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "ppv_lite86",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "simd",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "0.2.16",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.proc-macro-error-1.0.4.bazel b/examples/crate_universe/vendor_external/crates/BUILD.proc-macro-error-1.0.4.bazel
index 4e49073..28252c2 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.proc-macro-error-1.0.4.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.proc-macro-error-1.0.4.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,60 +20,28 @@
 
 rust_library(
     name = "proc_macro_error",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "syn",
         "syn-error",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__proc-macro-error-attr-1.0.4//:proc_macro_error_attr",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@crates_vendor__proc-macro-error-attr-1.0.4//:proc_macro_error_attr",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -88,36 +50,16 @@
     ],
     version = "1.0.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__proc-macro-error-1.0.4//:build_script_build",
-            "@crates_vendor__proc-macro2-1.0.36//:proc_macro2",
-            "@crates_vendor__quote-1.0.15//:quote",
-            "@crates_vendor__syn-1.0.86//:syn",
-        ],
-    }),
+        "@crates_vendor__proc-macro-error-1.0.4//:build_script_build",
+        "@crates_vendor__proc-macro2-1.0.36//:proc_macro2",
+        "@crates_vendor__quote-1.0.15//:quote",
+        "@crates_vendor__syn-1.0.86//:syn",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "proc-macro-error_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "syn",
@@ -129,32 +71,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -163,29 +87,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.4",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__version_check-0.9.4//:version_check",
-        ],
-    }),
+        "@crates_vendor__version_check-0.9.4//:version_check",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "proc-macro-error_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.proc-macro-error-attr-1.0.4.bazel b/examples/crate_universe/vendor_external/crates/BUILD.proc-macro-error-attr-1.0.4.bazel
index 1174d11..38e9b53 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.proc-macro-error-attr-1.0.4.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.proc-macro-error-attr-1.0.4.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -26,56 +20,20 @@
 
 rust_proc_macro(
     name = "proc_macro_error_attr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,69 +42,29 @@
     ],
     version = "1.0.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__proc-macro-error-attr-1.0.4//:build_script_build",
-            "@crates_vendor__proc-macro2-1.0.36//:proc_macro2",
-            "@crates_vendor__quote-1.0.15//:quote",
-        ],
-    }),
+        "@crates_vendor__proc-macro-error-attr-1.0.4//:build_script_build",
+        "@crates_vendor__proc-macro2-1.0.36//:proc_macro2",
+        "@crates_vendor__quote-1.0.15//:quote",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "proc-macro-error-attr_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -155,29 +73,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.4",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__version_check-0.9.4//:version_check",
-        ],
-    }),
+        "@crates_vendor__version_check-0.9.4//:version_check",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "proc-macro-error-attr_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.proc-macro2-1.0.36.bazel b/examples/crate_universe/vendor_external/crates/BUILD.proc-macro2-1.0.36.bazel
index 138f5e7..418d8a1 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.proc-macro2-1.0.36.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.proc-macro2-1.0.36.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "proc_macro2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
         "span-locations",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,34 +47,14 @@
     ],
     version = "1.0.36",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__proc-macro2-1.0.36//:build_script_build",
-            "@crates_vendor__unicode-xid-0.2.2//:unicode_xid",
-        ],
-    }),
+        "@crates_vendor__proc-macro2-1.0.36//:build_script_build",
+        "@crates_vendor__unicode-xid-0.2.2//:unicode_xid",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "proc-macro2_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -126,32 +66,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -160,28 +82,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.36",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "proc-macro2_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.pulldown-cmark-0.8.0.bazel b/examples/crate_universe/vendor_external/crates/BUILD.pulldown-cmark-0.8.0.bazel
index c3895d9..9feb8e1 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.pulldown-cmark-0.8.0.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.pulldown-cmark-0.8.0.bazel
@@ -6,16 +6,9 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
-    "rust_binary",
     "rust_library",
 )
 
@@ -27,56 +20,20 @@
 
 rust_library(
     name = "pulldown_cmark",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,141 +42,30 @@
     ],
     version = "0.8.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__bitflags-1.3.2//:bitflags",
-            "@crates_vendor__memchr-2.4.1//:memchr",
-            "@crates_vendor__pulldown-cmark-0.8.0//:build_script_build",
-            "@crates_vendor__unicase-2.6.0//:unicase",
-        ],
-    }),
-)
-
-rust_binary(
-    name = "pulldown-cmark__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    compile_data = glob(
-        include = ["**"],
-        exclude = [
-            "**/* *",
-            "BUILD.bazel",
-            "BUILD",
-            "WORKSPACE.bazel",
-            "WORKSPACE",
-        ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
+        "@crates_vendor__bitflags-1.3.2//:bitflags",
+        "@crates_vendor__memchr-2.4.1//:memchr",
+        "@crates_vendor__pulldown-cmark-0.8.0//:build_script_build",
+        "@crates_vendor__unicase-2.6.0//:unicase",
     ],
-    crate_root = "src/main.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
-    tags = [
-        "cargo-bazel",
-        "manual",
-        "noclippy",
-        "norustfmt",
-    ],
-    version = "0.8.0",
-    deps = [
-        ":pulldown_cmark",
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__bitflags-1.3.2//:bitflags",
-            "@crates_vendor__memchr-2.4.1//:memchr",
-            "@crates_vendor__pulldown-cmark-0.8.0//:build_script_build",
-            "@crates_vendor__unicase-2.6.0//:unicase",
-        ],
-    }),
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "pulldown-cmark_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -228,28 +74,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.8.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "pulldown-cmark_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.quote-1.0.15.bazel b/examples/crate_universe/vendor_external/crates/BUILD.quote-1.0.15.bazel
index 495ded0..2746e7e 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.quote-1.0.15.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.quote-1.0.15.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "quote",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "1.0.15",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__proc-macro2-1.0.36//:proc_macro2",
-        ],
-    }),
+        "@crates_vendor__proc-macro2-1.0.36//:proc_macro2",
+    ],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.rand-0.8.5.bazel b/examples/crate_universe/vendor_external/crates/BUILD.rand-0.8.5.bazel
index 6c4674b..847a115 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.rand-0.8.5.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.rand-0.8.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "rand",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
@@ -55,29 +40,8 @@
         "std_rng",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,105 +50,66 @@
     ],
     version = "0.8.5",
     deps = [
+        "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",
+        "@crates_vendor__rand_core-0.6.3//:rand_core",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@crates_vendor__libc-0.2.119//:libc",  # cfg(unix)
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@crates_vendor__rand_core-0.6.3//:rand_core",  # common dependency
         ],
-        "//conditions:default": [
-            "@crates_vendor__rand_chacha-0.3.1//:rand_chacha",
-            "@crates_vendor__rand_core-0.6.3//:rand_core",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.rand_chacha-0.3.1.bazel b/examples/crate_universe/vendor_external/crates/BUILD.rand_chacha-0.3.1.bazel
index 1f17ed5..5e02d90 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.rand_chacha-0.3.1.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.rand_chacha-0.3.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "rand_chacha",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,10 +42,7 @@
     ],
     version = "0.3.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__ppv-lite86-0.2.16//:ppv_lite86",
-            "@crates_vendor__rand_core-0.6.3//:rand_core",
-        ],
-    }),
+        "@crates_vendor__ppv-lite86-0.2.16//:ppv_lite86",
+        "@crates_vendor__rand_core-0.6.3//:rand_core",
+    ],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.rand_core-0.6.3.bazel b/examples/crate_universe/vendor_external/crates/BUILD.rand_core-0.6.3.bazel
index 0ed89aa..f75877f 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.rand_core-0.6.3.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.rand_core-0.6.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "rand_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "getrandom",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,6 @@
     ],
     version = "0.6.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__getrandom-0.2.5//:getrandom",
-        ],
-    }),
+        "@crates_vendor__getrandom-0.2.5//:getrandom",
+    ],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.regex-1.5.4.bazel b/examples/crate_universe/vendor_external/crates/BUILD.regex-1.5.4.bazel
index c26ff2c..a085a31 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.regex-1.5.4.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.regex-1.5.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "regex",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "std",
         "unicode",
@@ -57,29 +42,8 @@
         "unicode-segment",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -88,9 +52,6 @@
     ],
     version = "1.5.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__regex-syntax-0.6.25//:regex_syntax",
-        ],
-    }),
+        "@crates_vendor__regex-syntax-0.6.25//:regex_syntax",
+    ],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.regex-syntax-0.6.25.bazel b/examples/crate_universe/vendor_external/crates/BUILD.regex-syntax-0.6.25.bazel
index c4c8e95..8ab04a9 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.regex-syntax-0.6.25.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.regex-syntax-0.6.25.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "regex_syntax",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "unicode",
         "unicode-age",
@@ -56,29 +41,8 @@
         "unicode-segment",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,9 +50,4 @@
         "norustfmt",
     ],
     version = "0.6.25",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.semver-1.0.6.bazel b/examples/crate_universe/vendor_external/crates/BUILD.semver-1.0.6.bazel
index 3cbf738..9918cba 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.semver-1.0.6.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.semver-1.0.6.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "semver",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "1.0.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__semver-1.0.6//:build_script_build",
-        ],
-    }),
+        "@crates_vendor__semver-1.0.6//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "semver_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.6",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "semver_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.serde-1.0.136.bazel b/examples/crate_universe/vendor_external/crates/BUILD.serde-1.0.136.bazel
index 57e9a49..3974f8f 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.serde-1.0.136.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.serde-1.0.136.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "serde",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "1.0.136",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__serde-1.0.136//:build_script_build",
-        ],
-    }),
+        "@crates_vendor__serde-1.0.136//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "serde_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.136",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "serde_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.strsim-0.10.0.bazel b/examples/crate_universe/vendor_external/crates/BUILD.strsim-0.10.0.bazel
index ce1a812..971601b 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.strsim-0.10.0.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.strsim-0.10.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "strsim",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.10.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.syn-1.0.86.bazel b/examples/crate_universe/vendor_external/crates/BUILD.syn-1.0.86.bazel
index a36ac36..8d4442e 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.syn-1.0.86.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.syn-1.0.86.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "syn",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "clone-impls",
         "default",
@@ -61,29 +42,8 @@
         "quote",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -92,36 +52,16 @@
     ],
     version = "1.0.86",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__proc-macro2-1.0.36//:proc_macro2",
-            "@crates_vendor__quote-1.0.15//:quote",
-            "@crates_vendor__syn-1.0.86//:build_script_build",
-            "@crates_vendor__unicode-xid-0.2.2//:unicode_xid",
-        ],
-    }),
+        "@crates_vendor__proc-macro2-1.0.36//:proc_macro2",
+        "@crates_vendor__quote-1.0.15//:quote",
+        "@crates_vendor__syn-1.0.86//:build_script_build",
+        "@crates_vendor__unicode-xid-0.2.2//:unicode_xid",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "syn_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "clone-impls",
         "default",
@@ -138,32 +78,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -172,28 +94,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.86",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "syn_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.termcolor-1.1.3.bazel b/examples/crate_universe/vendor_external/crates/BUILD.termcolor-1.1.3.bazel
index 152c452..feac16f 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.termcolor-1.1.3.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.termcolor-1.1.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "termcolor",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "1.1.3",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@crates_vendor__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@crates_vendor__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.textwrap-0.15.0.bazel b/examples/crate_universe/vendor_external/crates/BUILD.textwrap-0.15.0.bazel
index 9cd4f22..dfa8338 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.textwrap-0.15.0.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.textwrap-0.15.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "textwrap",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.15.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.tinyvec-1.5.1.bazel b/examples/crate_universe/vendor_external/crates/BUILD.tinyvec-1.5.1.bazel
index 3ccee32..eaa8974 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.tinyvec-1.5.1.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.tinyvec-1.5.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "tinyvec",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
         "tinyvec_macros",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,6 @@
     ],
     version = "1.5.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__tinyvec_macros-0.1.0//:tinyvec_macros",
-        ],
-    }),
+        "@crates_vendor__tinyvec_macros-0.1.0//:tinyvec_macros",
+    ],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.tinyvec_macros-0.1.0.bazel b/examples/crate_universe/vendor_external/crates/BUILD.tinyvec_macros-0.1.0.bazel
index 09ac8b6..6072872 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.tinyvec_macros-0.1.0.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.tinyvec_macros-0.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tinyvec_macros",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.toml-0.5.8.bazel b/examples/crate_universe/vendor_external/crates/BUILD.toml-0.5.8.bazel
index e2330cf..1e48d6d 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.toml-0.5.8.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.toml-0.5.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "toml",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.5.8",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__serde-1.0.136//:serde",
-        ],
-    }),
+        "@crates_vendor__serde-1.0.136//:serde",
+    ],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.unicase-2.6.0.bazel b/examples/crate_universe/vendor_external/crates/BUILD.unicase-2.6.0.bazel
index c7a92cb..52a48c7 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.unicase-2.6.0.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.unicase-2.6.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "unicase",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "2.6.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__unicase-2.6.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor__unicase-2.6.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "unicase_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,29 +71,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "2.6.0",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__version_check-0.9.4//:version_check",
-        ],
-    }),
+        "@crates_vendor__version_check-0.9.4//:version_check",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "unicase_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.unicode-bidi-0.3.7.bazel b/examples/crate_universe/vendor_external/crates/BUILD.unicode-bidi-0.3.7.bazel
index 6688e95..91bd51c 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.unicode-bidi-0.3.7.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.unicode-bidi-0.3.7.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "unicode_bidi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "0.3.7",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.unicode-normalization-0.1.19.bazel b/examples/crate_universe/vendor_external/crates/BUILD.unicode-normalization-0.1.19.bazel
index 64f1f30..8315576 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.unicode-normalization-0.1.19.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.unicode-normalization-0.1.19.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "unicode_normalization",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.1.19",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__tinyvec-1.5.1//:tinyvec",
-        ],
-    }),
+        "@crates_vendor__tinyvec-1.5.1//:tinyvec",
+    ],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.unicode-xid-0.2.2.bazel b/examples/crate_universe/vendor_external/crates/BUILD.unicode-xid-0.2.2.bazel
index 3744391..66af31b 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.unicode-xid-0.2.2.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.unicode-xid-0.2.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "unicode_xid",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.2.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.url-2.2.2.bazel b/examples/crate_universe/vendor_external/crates/BUILD.url-2.2.2.bazel
index fe5a16a..00da00e 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.url-2.2.2.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.url-2.2.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "url",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,12 +41,9 @@
     ],
     version = "2.2.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__form_urlencoded-1.0.1//:form_urlencoded",
-            "@crates_vendor__idna-0.2.3//:idna",
-            "@crates_vendor__matches-0.1.9//:matches",
-            "@crates_vendor__percent-encoding-2.1.0//:percent_encoding",
-        ],
-    }),
+        "@crates_vendor__form_urlencoded-1.0.1//:form_urlencoded",
+        "@crates_vendor__idna-0.2.3//:idna",
+        "@crates_vendor__matches-0.1.9//:matches",
+        "@crates_vendor__percent-encoding-2.1.0//:percent_encoding",
+    ],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.version-sync-0.9.4.bazel b/examples/crate_universe/vendor_external/crates/BUILD.version-sync-0.9.4.bazel
index 490c181..4b55e3f 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.version-sync-0.9.4.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.version-sync-0.9.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "version_sync",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "contains_regex",
         "default",
@@ -59,29 +44,8 @@
         "url",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -90,15 +54,12 @@
     ],
     version = "0.9.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__proc-macro2-1.0.36//:proc_macro2",
-            "@crates_vendor__pulldown-cmark-0.8.0//:pulldown_cmark",
-            "@crates_vendor__regex-1.5.4//:regex",
-            "@crates_vendor__semver-1.0.6//:semver",
-            "@crates_vendor__syn-1.0.86//:syn",
-            "@crates_vendor__toml-0.5.8//:toml",
-            "@crates_vendor__url-2.2.2//:url",
-        ],
-    }),
+        "@crates_vendor__proc-macro2-1.0.36//:proc_macro2",
+        "@crates_vendor__pulldown-cmark-0.8.0//:pulldown_cmark",
+        "@crates_vendor__regex-1.5.4//:regex",
+        "@crates_vendor__semver-1.0.6//:semver",
+        "@crates_vendor__syn-1.0.86//:syn",
+        "@crates_vendor__toml-0.5.8//:toml",
+        "@crates_vendor__url-2.2.2//:url",
+    ],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.version_check-0.9.4.bazel b/examples/crate_universe/vendor_external/crates/BUILD.version_check-0.9.4.bazel
index f772f0c..c2abb26 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.version_check-0.9.4.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.version_check-0.9.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "version_check",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.9.4",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.wasi-0.10.2+wasi-snapshot-preview1.bazel b/examples/crate_universe/vendor_external/crates/BUILD.wasi-0.10.2+wasi-snapshot-preview1.bazel
index dd02144..4c4c3a5 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.wasi-0.10.2+wasi-snapshot-preview1.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.wasi-0.10.2+wasi-snapshot-preview1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "wasi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "0.10.2+wasi-snapshot-preview1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.winapi-0.3.9.bazel b/examples/crate_universe/vendor_external/crates/BUILD.winapi-0.3.9.bazel
index 5b260c8..cab1f1b 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.winapi-0.3.9.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.winapi-0.3.9.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "winapi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "consoleapi",
         "errhandlingapi",
@@ -64,29 +45,8 @@
         "winnt",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -95,33 +55,13 @@
     ],
     version = "0.3.9",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__winapi-0.3.9//:build_script_build",
-        ],
-    }),
+        "@crates_vendor__winapi-0.3.9//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "consoleapi",
         "errhandlingapi",
@@ -141,32 +81,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -175,28 +97,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.9",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel b/examples/crate_universe/vendor_external/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
index af8b988..3039e65 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_i686_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__winapi-i686-pc-windows-gnu-0.4.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor__winapi-i686-pc-windows-gnu-0.4.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-i686-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-i686-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.winapi-util-0.1.5.bazel b/examples/crate_universe/vendor_external/crates/BUILD.winapi-util-0.1.5.bazel
index 1d04520..0546805 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.winapi-util-0.1.5.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.winapi-util-0.1.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "winapi_util",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.1.5",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@crates_vendor__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@crates_vendor__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_external/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel b/examples/crate_universe/vendor_external/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
index 99fa319..1654e8c 100644
--- a/examples/crate_universe/vendor_external/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
+++ b/examples/crate_universe/vendor_external/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_external:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_x86_64_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor__winapi-x86_64-pc-windows-gnu-0.4.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor__winapi-x86_64-pc-windows-gnu-0.4.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-x86_64-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-x86_64-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/BUILD.bazel
index 6fc405e..df16913 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/BUILD.bazel
@@ -12,21 +12,15 @@
     [
         "cargo-bazel.json",
         "defs.bzl",
-    ] + glob(
-        include = ["*.bazel"],
-        exclude = [],
-    ),
+    ] + glob(["*.bazel"]),
 )
 
 filegroup(
     name = "srcs",
-    srcs = glob(
-        include = [
-            "*.bazel",
-            "*.bzl",
-        ],
-        exclude = [],
-    ),
+    srcs = glob([
+        "*.bazel",
+        "*.bzl",
+    ]),
 )
 
 # Workspace Member Dependencies
diff --git a/examples/crate_universe/vendor_local_manifests/crates/async-stream-0.3.3/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/async-stream-0.3.3/BUILD.bazel
index 9721ca1..b7cab6d 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/async-stream-0.3.3/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/async-stream-0.3.3/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,23 @@
 
 rust_library(
     name = "async_stream",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/async-stream-impl-0.3.3:async_stream_impl",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "//vendor_local_manifests/crates/async-stream-impl-0.3.3:async_stream_impl",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,6 @@
     ],
     version = "0.3.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/futures-core-0.3.25:futures_core",
-        ],
-    }),
+        "//vendor_local_manifests/crates/futures-core-0.3.25:futures_core",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/async-stream-impl-0.3.3/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/async-stream-impl-0.3.3/BUILD.bazel
index 2caba4b..9507ee6 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/async-stream-impl-0.3.3/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/async-stream-impl-0.3.3/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,56 +19,20 @@
 
 rust_proc_macro(
     name = "async_stream_impl",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.3.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/proc-macro2-1.0.49:proc_macro2",
-            "//vendor_local_manifests/crates/quote-1.0.23:quote",
-            "//vendor_local_manifests/crates/syn-1.0.107:syn",
-        ],
-    }),
+        "//vendor_local_manifests/crates/proc-macro2-1.0.49:proc_macro2",
+        "//vendor_local_manifests/crates/quote-1.0.23:quote",
+        "//vendor_local_manifests/crates/syn-1.0.107:syn",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/autocfg-1.1.0/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/autocfg-1.1.0/BUILD.bazel
index ae0d4f2..984e277 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/autocfg-1.1.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/autocfg-1.1.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "autocfg",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/bitflags-1.3.2/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/bitflags-1.3.2/BUILD.bazel
index 8c232a1..a451fbc 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/bitflags-1.3.2/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/bitflags-1.3.2/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "bitflags",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "1.3.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/bytes-1.3.0/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/bytes-1.3.0/BUILD.bazel
index cf53f94..5ff563a 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/bytes-1.3.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/bytes-1.3.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "bytes",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "1.3.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/cfg-if-1.0.0/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/cfg-if-1.0.0/BUILD.bazel
index 0193e63..ca8266e 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/cfg-if-1.0.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/cfg-if-1.0.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cfg_if",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/fastrand-1.8.0/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/fastrand-1.8.0/BUILD.bazel
index 02c081f..566db37 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/fastrand-1.8.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/fastrand-1.8.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "fastrand",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,15 +40,13 @@
         "norustfmt",
     ],
     version = "1.8.0",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:wasm32-unknown-unknown": [
             "//vendor_local_manifests/crates/instant-0.1.12:instant",  # cfg(target_arch = "wasm32")
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
             "//vendor_local_manifests/crates/instant-0.1.12:instant",  # cfg(target_arch = "wasm32")
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/futures-core-0.3.25/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/futures-core-0.3.25/BUILD.bazel
index 7c4c1a9..07d4c30 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/futures-core-0.3.25/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/futures-core-0.3.25/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "futures_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,33 +47,13 @@
     ],
     version = "0.3.25",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/futures-core-0.3.25:build_script_build",
-        ],
-    }),
+        "//vendor_local_manifests/crates/futures-core-0.3.25:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "futures-core_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "alloc",
         "default",
@@ -125,32 +65,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -159,28 +81,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.25",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "futures-core_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/hermit-abi-0.2.6/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/hermit-abi-0.2.6/BUILD.bazel
index bb4c66d..0e458ac 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/hermit-abi-0.2.6/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/hermit-abi-0.2.6/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hermit_abi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.2.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/libc-0.2.139:libc",
-        ],
-    }),
+        "//vendor_local_manifests/crates/libc-0.2.139:libc",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/instant-0.1.12/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/instant-0.1.12/BUILD.bazel
index 9b51ead..5325165 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/instant-0.1.12/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/instant-0.1.12/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "instant",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.1.12",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",
-        ],
-    }),
+        "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/libc-0.2.139/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/libc-0.2.139/BUILD.bazel
index ad0fe40..48ae788 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/libc-0.2.139/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/libc-0.2.139/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "libc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "0.2.139",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/libc-0.2.139:build_script_build",
-        ],
-    }),
+        "//vendor_local_manifests/crates/libc-0.2.139:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "libc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.139",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "libc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/lock_api-0.4.9/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/lock_api-0.4.9/BUILD.bazel
index b41c9b9..c193bfc 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/lock_api-0.4.9/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/lock_api-0.4.9/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "lock_api",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.4.9",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/lock_api-0.4.9:build_script_build",
-            "//vendor_local_manifests/crates/scopeguard-1.1.0:scopeguard",
-        ],
-    }),
+        "//vendor_local_manifests/crates/lock_api-0.4.9:build_script_build",
+        "//vendor_local_manifests/crates/scopeguard-1.1.0:scopeguard",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "lock_api_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,29 +72,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.9",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/autocfg-1.1.0:autocfg",
-        ],
-    }),
+        "//vendor_local_manifests/crates/autocfg-1.1.0:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "lock_api_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/log-0.4.17/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/log-0.4.17/BUILD.bazel
index 976679a..f119996 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/log-0.4.17/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/log-0.4.17/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "log",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.4.17",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",
-            "//vendor_local_manifests/crates/log-0.4.17:build_script_build",
-        ],
-    }),
+        "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",
+        "//vendor_local_manifests/crates/log-0.4.17:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "log_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,28 +72,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.17",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "log_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/memchr-2.5.0/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/memchr-2.5.0/BUILD.bazel
index 3872d0d..c8d89ca 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/memchr-2.5.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/memchr-2.5.0/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "memchr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "2.5.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/memchr-2.5.0:build_script_build",
-        ],
-    }),
+        "//vendor_local_manifests/crates/memchr-2.5.0:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "memchr_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "2.5.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "memchr_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/mio-0.7.14/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/mio-0.7.14/BUILD.bazel
index 96e0cbf..00b612a 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/mio-0.7.14/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/mio-0.7.14/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "mio",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "net",
@@ -56,29 +41,8 @@
         "uds",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,103 +51,80 @@
     ],
     version = "0.7.14",
     deps = [
+        "//vendor_local_manifests/crates/log-0.4.17:log",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
             "//vendor_local_manifests/crates/miow-0.3.7:miow",  # cfg(windows)
             "//vendor_local_manifests/crates/ntapi-0.3.7:ntapi",  # cfg(windows)
             "//vendor_local_manifests/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
             "//vendor_local_manifests/crates/miow-0.3.7:miow",  # cfg(windows)
             "//vendor_local_manifests/crates/ntapi-0.3.7:ntapi",  # cfg(windows)
             "//vendor_local_manifests/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
             "//vendor_local_manifests/crates/miow-0.3.7:miow",  # cfg(windows)
             "//vendor_local_manifests/crates/ntapi-0.3.7:ntapi",  # cfg(windows)
             "//vendor_local_manifests/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/log-0.4.17:log",  # common dependency
         ],
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/log-0.4.17:log",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/miow-0.3.7/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/miow-0.3.7/BUILD.bazel
index 144a29a..2d8863c 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/miow-0.3.7/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/miow-0.3.7/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "miow",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.3.7",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/winapi-0.3.9:winapi",
-        ],
-    }),
+        "//vendor_local_manifests/crates/winapi-0.3.9:winapi",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/ntapi-0.3.7/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/ntapi-0.3.7/BUILD.bazel
index a748338..aff6bac 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/ntapi-0.3.7/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/ntapi-0.3.7/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "ntapi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "user",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "0.3.7",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/ntapi-0.3.7:build_script_build",
-            "//vendor_local_manifests/crates/winapi-0.3.9:winapi",
-        ],
-    }),
+        "//vendor_local_manifests/crates/ntapi-0.3.7:build_script_build",
+        "//vendor_local_manifests/crates/winapi-0.3.9:winapi",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "ntapi_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "user",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.7",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "ntapi_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/num_cpus-1.15.0/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/num_cpus-1.15.0/BUILD.bazel
index add82c9..4466e94 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/num_cpus-1.15.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/num_cpus-1.15.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "num_cpus",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "1.15.0",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(not(windows))
         ],
@@ -149,7 +110,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(not(windows))
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/once_cell-1.17.0/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/once_cell-1.17.0/BUILD.bazel
index eba07a6..7a65374 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/once_cell-1.17.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/once_cell-1.17.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "once_cell",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
@@ -52,29 +37,8 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,4 @@
         "norustfmt",
     ],
     version = "1.17.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/parking_lot-0.11.2/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/parking_lot-0.11.2/BUILD.bazel
index f70eaff..4da7986 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/parking_lot-0.11.2/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/parking_lot-0.11.2/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "parking_lot",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,11 +42,8 @@
     ],
     version = "0.11.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",
-            "//vendor_local_manifests/crates/lock_api-0.4.9:lock_api",
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:parking_lot_core",
-        ],
-    }),
+        "//vendor_local_manifests/crates/instant-0.1.12:instant",
+        "//vendor_local_manifests/crates/lock_api-0.4.9:lock_api",
+        "//vendor_local_manifests/crates/parking_lot_core-0.8.6:parking_lot_core",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/parking_lot_core-0.8.6/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/parking_lot_core-0.8.6/BUILD.bazel
index 86651ad..9787cf1 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/parking_lot_core-0.8.6/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/parking_lot_core-0.8.6/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "parking_lot_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,224 +42,98 @@
     ],
     version = "0.8.6",
     deps = [
+        "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",
+        "//vendor_local_manifests/crates/instant-0.1.12:instant",
+        "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",
+        "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
             "//vendor_local_manifests/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
             "//vendor_local_manifests/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
             "//vendor_local_manifests/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",
-            "//vendor_local_manifests/crates/instant-0.1.12:instant",
-            "//vendor_local_manifests/crates/parking_lot_core-0.8.6:build_script_build",
-            "//vendor_local_manifests/crates/smallvec-1.10.0:smallvec",
-        ],
+        "//conditions:default": [],
     }),
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "parking_lot_core_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -310,28 +142,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.8.6",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "parking_lot_core_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/pin-project-lite-0.2.9/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/pin-project-lite-0.2.9/BUILD.bazel
index 493953a..e2a1a50 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/pin-project-lite-0.2.9/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/pin-project-lite-0.2.9/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "pin_project_lite",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.2.9",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/proc-macro2-1.0.49/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/proc-macro2-1.0.49/BUILD.bazel
index 190e391..306455f 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/proc-macro2-1.0.49/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/proc-macro2-1.0.49/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "proc_macro2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "1.0.49",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/proc-macro2-1.0.49:build_script_build",
-            "//vendor_local_manifests/crates/unicode-ident-1.0.6:unicode_ident",
-        ],
-    }),
+        "//vendor_local_manifests/crates/proc-macro2-1.0.49:build_script_build",
+        "//vendor_local_manifests/crates/unicode-ident-1.0.6:unicode_ident",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "proc-macro2_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.49",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "proc-macro2_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/quote-1.0.23/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/quote-1.0.23/BUILD.bazel
index bc50f38..0222979 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/quote-1.0.23/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/quote-1.0.23/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "quote",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "1.0.23",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/proc-macro2-1.0.49:proc_macro2",
-            "//vendor_local_manifests/crates/quote-1.0.23:build_script_build",
-        ],
-    }),
+        "//vendor_local_manifests/crates/proc-macro2-1.0.49:proc_macro2",
+        "//vendor_local_manifests/crates/quote-1.0.23:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "quote_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.23",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "quote_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/redox_syscall-0.2.16/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/redox_syscall-0.2.16/BUILD.bazel
index 3591492..86e6ef5 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/redox_syscall-0.2.16/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/redox_syscall-0.2.16/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "syscall",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.2.16",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/bitflags-1.3.2:bitflags",
-        ],
-    }),
+        "//vendor_local_manifests/crates/bitflags-1.3.2:bitflags",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/remove_dir_all-0.5.3/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/remove_dir_all-0.5.3/BUILD.bazel
index b4bdfcf..d606ed4 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/remove_dir_all-0.5.3/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/remove_dir_all-0.5.3/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "remove_dir_all",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.5.3",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "//vendor_local_manifests/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "//vendor_local_manifests/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/scopeguard-1.1.0/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/scopeguard-1.1.0/BUILD.bazel
index fe18946..83fecc2 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/scopeguard-1.1.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/scopeguard-1.1.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "scopeguard",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/signal-hook-registry-1.4.0/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/signal-hook-registry-1.4.0/BUILD.bazel
index 44e5d9f..f2eca38 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/signal-hook-registry-1.4.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/signal-hook-registry-1.4.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "signal_hook_registry",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "1.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/libc-0.2.139:libc",
-        ],
-    }),
+        "//vendor_local_manifests/crates/libc-0.2.139:libc",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/smallvec-1.10.0/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/smallvec-1.10.0/BUILD.bazel
index fd7efcb..0e710f1 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/smallvec-1.10.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/smallvec-1.10.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "smallvec",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.10.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/syn-1.0.107/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/syn-1.0.107/BUILD.bazel
index a8fe500..eb58134 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/syn-1.0.107/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/syn-1.0.107/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "syn",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "clone-impls",
         "default",
@@ -62,29 +43,8 @@
         "visit-mut",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -93,36 +53,16 @@
     ],
     version = "1.0.107",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/proc-macro2-1.0.49:proc_macro2",
-            "//vendor_local_manifests/crates/quote-1.0.23:quote",
-            "//vendor_local_manifests/crates/syn-1.0.107:build_script_build",
-            "//vendor_local_manifests/crates/unicode-ident-1.0.6:unicode_ident",
-        ],
-    }),
+        "//vendor_local_manifests/crates/proc-macro2-1.0.49:proc_macro2",
+        "//vendor_local_manifests/crates/quote-1.0.23:quote",
+        "//vendor_local_manifests/crates/syn-1.0.107:build_script_build",
+        "//vendor_local_manifests/crates/unicode-ident-1.0.6:unicode_ident",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "syn_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "clone-impls",
         "default",
@@ -140,32 +80,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -174,28 +96,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.107",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "syn_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/tempfile-3.3.0/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/tempfile-3.3.0/BUILD.bazel
index 7b86b17..ae09acd 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/tempfile-3.3.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/tempfile-3.3.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tempfile",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,149 +41,79 @@
     ],
     version = "3.3.0",
     deps = [
+        "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",
+        "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",
+        "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
             "//vendor_local_manifests/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
             "//vendor_local_manifests/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
             "//vendor_local_manifests/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(any(unix, target_os = "wasi"))
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",  # common dependency
         ],
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/cfg-if-1.0.0:cfg_if",
-            "//vendor_local_manifests/crates/fastrand-1.8.0:fastrand",
-            "//vendor_local_manifests/crates/remove_dir_all-0.5.3:remove_dir_all",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/tokio-1.16.1/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/tokio-1.16.1/BUILD.bazel
index 6f045e2..5dfc385 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/tokio-1.16.1/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/tokio-1.16.1/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "tokio",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "bytes",
         "default",
@@ -72,30 +57,11 @@
         "winapi",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/tokio-macros-1.8.2:tokio_macros",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "//vendor_local_manifests/crates/tokio-macros-1.8.2:tokio_macros",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -104,254 +70,99 @@
     ],
     version = "1.16.1",
     deps = [
+        "//vendor_local_manifests/crates/bytes-1.3.0:bytes",
+        "//vendor_local_manifests/crates/memchr-2.5.0:memchr",
+        "//vendor_local_manifests/crates/mio-0.7.14:mio",
+        "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",
+        "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",
+        "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",
+        "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_manifests/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_manifests/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",
-            "//vendor_local_manifests/crates/memchr-2.5.0:memchr",
-            "//vendor_local_manifests/crates/mio-0.7.14:mio",
-            "//vendor_local_manifests/crates/num_cpus-1.15.0:num_cpus",
-            "//vendor_local_manifests/crates/once_cell-1.17.0:once_cell",
-            "//vendor_local_manifests/crates/parking_lot-0.11.2:parking_lot",
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/tokio-macros-1.8.2/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/tokio-macros-1.8.2/BUILD.bazel
index 5af4e55..fc78b70 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/tokio-macros-1.8.2/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/tokio-macros-1.8.2/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,56 +19,20 @@
 
 rust_proc_macro(
     name = "tokio_macros",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "1.8.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/proc-macro2-1.0.49:proc_macro2",
-            "//vendor_local_manifests/crates/quote-1.0.23:quote",
-            "//vendor_local_manifests/crates/syn-1.0.107:syn",
-        ],
-    }),
+        "//vendor_local_manifests/crates/proc-macro2-1.0.49:proc_macro2",
+        "//vendor_local_manifests/crates/quote-1.0.23:quote",
+        "//vendor_local_manifests/crates/syn-1.0.107:syn",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/tokio-stream-0.1.11/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/tokio-stream-0.1.11/BUILD.bazel
index 4f592c8..b1686d4 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/tokio-stream-0.1.11/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/tokio-stream-0.1.11/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "tokio_stream",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "time",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,11 +45,8 @@
     ],
     version = "0.1.11",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/futures-core-0.3.25:futures_core",
-            "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",
-            "//vendor_local_manifests/crates/tokio-1.16.1:tokio",
-        ],
-    }),
+        "//vendor_local_manifests/crates/futures-core-0.3.25:futures_core",
+        "//vendor_local_manifests/crates/pin-project-lite-0.2.9:pin_project_lite",
+        "//vendor_local_manifests/crates/tokio-1.16.1:tokio",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/tokio-test-0.4.2/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/tokio-test-0.4.2/BUILD.bazel
index d161703..0752735 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/tokio-test-0.4.2/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/tokio-test-0.4.2/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_test",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,13 +41,10 @@
     ],
     version = "0.4.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/async-stream-0.3.3:async_stream",
-            "//vendor_local_manifests/crates/bytes-1.3.0:bytes",
-            "//vendor_local_manifests/crates/futures-core-0.3.25:futures_core",
-            "//vendor_local_manifests/crates/tokio-1.16.1:tokio",
-            "//vendor_local_manifests/crates/tokio-stream-0.1.11:tokio_stream",
-        ],
-    }),
+        "//vendor_local_manifests/crates/async-stream-0.3.3:async_stream",
+        "//vendor_local_manifests/crates/bytes-1.3.0:bytes",
+        "//vendor_local_manifests/crates/futures-core-0.3.25:futures_core",
+        "//vendor_local_manifests/crates/tokio-1.16.1:tokio",
+        "//vendor_local_manifests/crates/tokio-stream-0.1.11:tokio_stream",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/unicode-ident-1.0.6/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/unicode-ident-1.0.6/BUILD.bazel
index 95e6b33..7294ed0 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/unicode-ident-1.0.6/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/unicode-ident-1.0.6/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "unicode_ident",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.6",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/winapi-0.3.9/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/winapi-0.3.9/BUILD.bazel
index d40a78a..3e8f32b 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/winapi-0.3.9/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/winapi-0.3.9/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "winapi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "cfg",
         "consoleapi",
@@ -81,29 +62,8 @@
         "ws2ipdef",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -112,33 +72,13 @@
     ],
     version = "0.3.9",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/winapi-0.3.9:build_script_build",
-        ],
-    }),
+        "//vendor_local_manifests/crates/winapi-0.3.9:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "cfg",
         "consoleapi",
@@ -175,32 +115,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -209,28 +131,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.9",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/winapi-i686-pc-windows-gnu-0.4.0/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/winapi-i686-pc-windows-gnu-0.4.0/BUILD.bazel
index 432ea16..1717665 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/winapi-i686-pc-windows-gnu-0.4.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/winapi-i686-pc-windows-gnu-0.4.0/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_i686_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/winapi-i686-pc-windows-gnu-0.4.0:build_script_build",
-        ],
-    }),
+        "//vendor_local_manifests/crates/winapi-i686-pc-windows-gnu-0.4.0:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-i686-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-i686-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_manifests/crates/winapi-x86_64-pc-windows-gnu-0.4.0/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/winapi-x86_64-pc-windows-gnu-0.4.0/BUILD.bazel
index a3f7afd..f5eb80b 100644
--- a/examples/crate_universe/vendor_local_manifests/crates/winapi-x86_64-pc-windows-gnu-0.4.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_manifests/crates/winapi-x86_64-pc-windows-gnu-0.4.0/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_manifests:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_x86_64_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_manifests/crates/winapi-x86_64-pc-windows-gnu-0.4.0:build_script_build",
-        ],
-    }),
+        "//vendor_local_manifests/crates/winapi-x86_64-pc-windows-gnu-0.4.0:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-x86_64-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-x86_64-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/BUILD.bazel
index 46ac6df..469eb4e 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/BUILD.bazel
@@ -12,21 +12,15 @@
     [
         "cargo-bazel.json",
         "defs.bzl",
-    ] + glob(
-        include = ["*.bazel"],
-        exclude = [],
-    ),
+    ] + glob(["*.bazel"]),
 )
 
 filegroup(
     name = "srcs",
-    srcs = glob(
-        include = [
-            "*.bazel",
-            "*.bzl",
-        ],
-        exclude = [],
-    ),
+    srcs = glob([
+        "*.bazel",
+        "*.bzl",
+    ]),
 )
 
 # Workspace Member Dependencies
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/async-trait-0.1.60/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/async-trait-0.1.60/BUILD.bazel
index d16d2a4..0482ead 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/async-trait-0.1.60/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/async-trait-0.1.60/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -26,56 +20,20 @@
 
 rust_proc_macro(
     name = "async_trait",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,70 +42,30 @@
     ],
     version = "0.1.60",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/async-trait-0.1.60:build_script_build",
-            "//vendor_local_pkgs/crates/proc-macro2-1.0.49:proc_macro2",
-            "//vendor_local_pkgs/crates/quote-1.0.23:quote",
-            "//vendor_local_pkgs/crates/syn-1.0.107:syn",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/async-trait-0.1.60:build_script_build",
+        "//vendor_local_pkgs/crates/proc-macro2-1.0.49:proc_macro2",
+        "//vendor_local_pkgs/crates/quote-1.0.23:quote",
+        "//vendor_local_pkgs/crates/syn-1.0.107:syn",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "async-trait_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,28 +74,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.1.60",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "async-trait_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/autocfg-1.1.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/autocfg-1.1.0/BUILD.bazel
index b774fb9..b65a583 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/autocfg-1.1.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/autocfg-1.1.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "autocfg",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/axum-0.4.8/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/axum-0.4.8/BUILD.bazel
index c249c2b..a5c21bb 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/axum-0.4.8/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/axum-0.4.8/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,17 +19,7 @@
 
 rust_library(
     name = "axum",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = [
             "**",
@@ -39,15 +27,12 @@
         ],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "http1",
@@ -56,30 +41,11 @@
         "tower-log",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/async-trait-0.1.60:async_trait",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "//vendor_local_pkgs/crates/async-trait-0.1.60:async_trait",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -88,29 +54,26 @@
     ],
     version = "0.4.8",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/axum-core-0.1.2:axum_core",
-            "//vendor_local_pkgs/crates/bitflags-1.3.2:bitflags",
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
-            "//vendor_local_pkgs/crates/futures-util-0.3.25:futures_util",
-            "//vendor_local_pkgs/crates/http-0.2.8:http",
-            "//vendor_local_pkgs/crates/http-body-0.4.5:http_body",
-            "//vendor_local_pkgs/crates/hyper-0.14.23:hyper",
-            "//vendor_local_pkgs/crates/matchit-0.4.6:matchit",
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",
-            "//vendor_local_pkgs/crates/mime-0.3.16:mime",
-            "//vendor_local_pkgs/crates/percent-encoding-2.2.0:percent_encoding",
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
-            "//vendor_local_pkgs/crates/serde-1.0.152:serde",
-            "//vendor_local_pkgs/crates/serde_json-1.0.91:serde_json",
-            "//vendor_local_pkgs/crates/serde_urlencoded-0.7.1:serde_urlencoded",
-            "//vendor_local_pkgs/crates/sync_wrapper-0.1.1:sync_wrapper",
-            "//vendor_local_pkgs/crates/tokio-1.16.1:tokio",
-            "//vendor_local_pkgs/crates/tower-0.4.13:tower",
-            "//vendor_local_pkgs/crates/tower-http-0.2.5:tower_http",
-            "//vendor_local_pkgs/crates/tower-layer-0.3.2:tower_layer",
-            "//vendor_local_pkgs/crates/tower-service-0.3.2:tower_service",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/axum-core-0.1.2:axum_core",
+        "//vendor_local_pkgs/crates/bitflags-1.3.2:bitflags",
+        "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
+        "//vendor_local_pkgs/crates/futures-util-0.3.25:futures_util",
+        "//vendor_local_pkgs/crates/http-0.2.8:http",
+        "//vendor_local_pkgs/crates/http-body-0.4.5:http_body",
+        "//vendor_local_pkgs/crates/hyper-0.14.23:hyper",
+        "//vendor_local_pkgs/crates/matchit-0.4.6:matchit",
+        "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",
+        "//vendor_local_pkgs/crates/mime-0.3.16:mime",
+        "//vendor_local_pkgs/crates/percent-encoding-2.2.0:percent_encoding",
+        "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
+        "//vendor_local_pkgs/crates/serde-1.0.152:serde",
+        "//vendor_local_pkgs/crates/serde_json-1.0.91:serde_json",
+        "//vendor_local_pkgs/crates/serde_urlencoded-0.7.1:serde_urlencoded",
+        "//vendor_local_pkgs/crates/sync_wrapper-0.1.1:sync_wrapper",
+        "//vendor_local_pkgs/crates/tokio-1.16.1:tokio",
+        "//vendor_local_pkgs/crates/tower-0.4.13:tower",
+        "//vendor_local_pkgs/crates/tower-http-0.2.5:tower_http",
+        "//vendor_local_pkgs/crates/tower-layer-0.3.2:tower_layer",
+        "//vendor_local_pkgs/crates/tower-service-0.3.2:tower_service",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/axum-core-0.1.2/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/axum-core-0.1.2/BUILD.bazel
index 2714442..7b7bad3 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/axum-core-0.1.2/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/axum-core-0.1.2/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,23 @@
 
 rust_library(
     name = "axum_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/async-trait-0.1.60:async_trait",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "//vendor_local_pkgs/crates/async-trait-0.1.60:async_trait",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,13 +44,10 @@
     ],
     version = "0.1.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
-            "//vendor_local_pkgs/crates/futures-util-0.3.25:futures_util",
-            "//vendor_local_pkgs/crates/http-0.2.8:http",
-            "//vendor_local_pkgs/crates/http-body-0.4.5:http_body",
-            "//vendor_local_pkgs/crates/mime-0.3.16:mime",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
+        "//vendor_local_pkgs/crates/futures-util-0.3.25:futures_util",
+        "//vendor_local_pkgs/crates/http-0.2.8:http",
+        "//vendor_local_pkgs/crates/http-body-0.4.5:http_body",
+        "//vendor_local_pkgs/crates/mime-0.3.16:mime",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/bitflags-1.3.2/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/bitflags-1.3.2/BUILD.bazel
index 32ac55f..5a5a243 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/bitflags-1.3.2/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/bitflags-1.3.2/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "bitflags",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "1.3.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/bytes-1.3.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/bytes-1.3.0/BUILD.bazel
index 968af98..5020e02 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/bytes-1.3.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/bytes-1.3.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "bytes",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "1.3.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/cfg-if-1.0.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/cfg-if-1.0.0/BUILD.bazel
index 04e55f5..9041e3f 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/cfg-if-1.0.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/cfg-if-1.0.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cfg_if",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/fnv-1.0.7/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/fnv-1.0.7/BUILD.bazel
index 9223b77..259d69d 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/fnv-1.0.7/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/fnv-1.0.7/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "fnv",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "1.0.7",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/form_urlencoded-1.1.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/form_urlencoded-1.1.0/BUILD.bazel
index d3ee520..089c34c 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/form_urlencoded-1.1.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/form_urlencoded-1.1.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "form_urlencoded",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "1.1.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/percent-encoding-2.2.0:percent_encoding",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/percent-encoding-2.2.0:percent_encoding",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/futures-channel-0.3.25/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/futures-channel-0.3.25/BUILD.bazel
index d5def65..8cbce8a 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/futures-channel-0.3.25/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/futures-channel-0.3.25/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "futures_channel",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,34 +47,14 @@
     ],
     version = "0.3.25",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/futures-channel-0.3.25:build_script_build",
-            "//vendor_local_pkgs/crates/futures-core-0.3.25:futures_core",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/futures-channel-0.3.25:build_script_build",
+        "//vendor_local_pkgs/crates/futures-core-0.3.25:futures_core",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "futures-channel_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "alloc",
         "default",
@@ -126,32 +66,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -160,28 +82,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.25",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "futures-channel_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/futures-core-0.3.25/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/futures-core-0.3.25/BUILD.bazel
index f4f6cd5..c6e8206 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/futures-core-0.3.25/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/futures-core-0.3.25/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "futures_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,33 +47,13 @@
     ],
     version = "0.3.25",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/futures-core-0.3.25:build_script_build",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/futures-core-0.3.25:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "futures-core_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "alloc",
         "default",
@@ -125,32 +65,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -159,28 +81,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.25",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "futures-core_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/futures-sink-0.3.25/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/futures-sink-0.3.25/BUILD.bazel
index 35a39b0..c739ebd 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/futures-sink-0.3.25/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/futures-sink-0.3.25/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "futures_sink",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,4 @@
         "norustfmt",
     ],
     version = "0.3.25",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/futures-task-0.3.25/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/futures-task-0.3.25/BUILD.bazel
index 9558abd..1ea4d50 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/futures-task-0.3.25/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/futures-task-0.3.25/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "futures_task",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "alloc",
-    ],
+    ),
+    crate_features = ["alloc"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,68 +43,28 @@
     ],
     version = "0.3.25",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/futures-task-0.3.25:build_script_build",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/futures-task-0.3.25:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "futures-task_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "alloc",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["alloc"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -155,28 +73,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.25",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "futures-task_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/futures-util-0.3.25/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/futures-util-0.3.25/BUILD.bazel
index 62e8d07..9e50d02 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/futures-util-0.3.25/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/futures-util-0.3.25/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "futures_util",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "alloc",
-    ],
+    ),
+    crate_features = ["alloc"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,72 +43,32 @@
     ],
     version = "0.3.25",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/futures-core-0.3.25:futures_core",
-            "//vendor_local_pkgs/crates/futures-task-0.3.25:futures_task",
-            "//vendor_local_pkgs/crates/futures-util-0.3.25:build_script_build",
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
-            "//vendor_local_pkgs/crates/pin-utils-0.1.0:pin_utils",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/futures-core-0.3.25:futures_core",
+        "//vendor_local_pkgs/crates/futures-task-0.3.25:futures_task",
+        "//vendor_local_pkgs/crates/futures-util-0.3.25:build_script_build",
+        "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
+        "//vendor_local_pkgs/crates/pin-utils-0.1.0:pin_utils",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "futures-util_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "alloc",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["alloc"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -159,28 +77,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.25",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "futures-util_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/h2-0.3.15/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/h2-0.3.15/BUILD.bazel
index bcbb50f..af2787f 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/h2-0.3.15/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/h2-0.3.15/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "h2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,19 +41,16 @@
     ],
     version = "0.3.15",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
-            "//vendor_local_pkgs/crates/fnv-1.0.7:fnv",
-            "//vendor_local_pkgs/crates/futures-core-0.3.25:futures_core",
-            "//vendor_local_pkgs/crates/futures-sink-0.3.25:futures_sink",
-            "//vendor_local_pkgs/crates/futures-util-0.3.25:futures_util",
-            "//vendor_local_pkgs/crates/http-0.2.8:http",
-            "//vendor_local_pkgs/crates/indexmap-1.9.2:indexmap",
-            "//vendor_local_pkgs/crates/slab-0.4.7:slab",
-            "//vendor_local_pkgs/crates/tokio-1.16.1:tokio",
-            "//vendor_local_pkgs/crates/tokio-util-0.7.2:tokio_util",
-            "//vendor_local_pkgs/crates/tracing-0.1.37:tracing",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
+        "//vendor_local_pkgs/crates/fnv-1.0.7:fnv",
+        "//vendor_local_pkgs/crates/futures-core-0.3.25:futures_core",
+        "//vendor_local_pkgs/crates/futures-sink-0.3.25:futures_sink",
+        "//vendor_local_pkgs/crates/futures-util-0.3.25:futures_util",
+        "//vendor_local_pkgs/crates/http-0.2.8:http",
+        "//vendor_local_pkgs/crates/indexmap-1.9.2:indexmap",
+        "//vendor_local_pkgs/crates/slab-0.4.7:slab",
+        "//vendor_local_pkgs/crates/tokio-1.16.1:tokio",
+        "//vendor_local_pkgs/crates/tokio-util-0.7.2:tokio_util",
+        "//vendor_local_pkgs/crates/tracing-0.1.37:tracing",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/hashbrown-0.12.3/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/hashbrown-0.12.3/BUILD.bazel
index 00366a0..c92c706 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/hashbrown-0.12.3/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/hashbrown-0.12.3/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hashbrown",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "raw",
-    ],
+    ),
+    crate_features = ["raw"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.12.3",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/hermit-abi-0.2.6/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/hermit-abi-0.2.6/BUILD.bazel
index c7a1e8c..6a3f8d9 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/hermit-abi-0.2.6/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/hermit-abi-0.2.6/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hermit_abi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.2.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/libc-0.2.139:libc",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/libc-0.2.139:libc",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/http-0.2.8/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/http-0.2.8/BUILD.bazel
index deb8bfd..ce2c787 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/http-0.2.8/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/http-0.2.8/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "http",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.2.8",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
-            "//vendor_local_pkgs/crates/fnv-1.0.7:fnv",
-            "//vendor_local_pkgs/crates/itoa-1.0.5:itoa",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
+        "//vendor_local_pkgs/crates/fnv-1.0.7:fnv",
+        "//vendor_local_pkgs/crates/itoa-1.0.5:itoa",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/http-body-0.4.5/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/http-body-0.4.5/BUILD.bazel
index 371ef71..88e71da 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/http-body-0.4.5/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/http-body-0.4.5/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "http_body",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.4.5",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
-            "//vendor_local_pkgs/crates/http-0.2.8:http",
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
+        "//vendor_local_pkgs/crates/http-0.2.8:http",
+        "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/http-range-header-0.3.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/http-range-header-0.3.0/BUILD.bazel
index 8d42a64..0d10458 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/http-range-header-0.3.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/http-range-header-0.3.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "http_range_header",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/httparse-1.8.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/httparse-1.8.0/BUILD.bazel
index 9e81913..da3a75b 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/httparse-1.8.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/httparse-1.8.0/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "httparse",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "1.8.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/httparse-1.8.0:build_script_build",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/httparse-1.8.0:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "httparse_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.8.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "httparse_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/httpdate-1.0.2/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/httpdate-1.0.2/BUILD.bazel
index a14420f..1871b30 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/httpdate-1.0.2/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/httpdate-1.0.2/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "httpdate",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/hyper-0.14.23/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/hyper-0.14.23/BUILD.bazel
index aeadca9..0469d8a 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/hyper-0.14.23/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/hyper-0.14.23/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "hyper",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "client",
         "default",
@@ -59,29 +44,8 @@
         "tcp",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -90,24 +54,21 @@
     ],
     version = "0.14.23",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
-            "//vendor_local_pkgs/crates/futures-channel-0.3.25:futures_channel",
-            "//vendor_local_pkgs/crates/futures-core-0.3.25:futures_core",
-            "//vendor_local_pkgs/crates/futures-util-0.3.25:futures_util",
-            "//vendor_local_pkgs/crates/h2-0.3.15:h2",
-            "//vendor_local_pkgs/crates/http-0.2.8:http",
-            "//vendor_local_pkgs/crates/http-body-0.4.5:http_body",
-            "//vendor_local_pkgs/crates/httparse-1.8.0:httparse",
-            "//vendor_local_pkgs/crates/httpdate-1.0.2:httpdate",
-            "//vendor_local_pkgs/crates/itoa-1.0.5:itoa",
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
-            "//vendor_local_pkgs/crates/socket2-0.4.7:socket2",
-            "//vendor_local_pkgs/crates/tokio-1.16.1:tokio",
-            "//vendor_local_pkgs/crates/tower-service-0.3.2:tower_service",
-            "//vendor_local_pkgs/crates/tracing-0.1.37:tracing",
-            "//vendor_local_pkgs/crates/want-0.3.0:want",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
+        "//vendor_local_pkgs/crates/futures-channel-0.3.25:futures_channel",
+        "//vendor_local_pkgs/crates/futures-core-0.3.25:futures_core",
+        "//vendor_local_pkgs/crates/futures-util-0.3.25:futures_util",
+        "//vendor_local_pkgs/crates/h2-0.3.15:h2",
+        "//vendor_local_pkgs/crates/http-0.2.8:http",
+        "//vendor_local_pkgs/crates/http-body-0.4.5:http_body",
+        "//vendor_local_pkgs/crates/httparse-1.8.0:httparse",
+        "//vendor_local_pkgs/crates/httpdate-1.0.2:httpdate",
+        "//vendor_local_pkgs/crates/itoa-1.0.5:itoa",
+        "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
+        "//vendor_local_pkgs/crates/socket2-0.4.7:socket2",
+        "//vendor_local_pkgs/crates/tokio-1.16.1:tokio",
+        "//vendor_local_pkgs/crates/tower-service-0.3.2:tower_service",
+        "//vendor_local_pkgs/crates/tracing-0.1.37:tracing",
+        "//vendor_local_pkgs/crates/want-0.3.0:want",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/indexmap-1.9.2/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/indexmap-1.9.2/BUILD.bazel
index 62c2ba4..ced5788 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/indexmap-1.9.2/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/indexmap-1.9.2/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "indexmap",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,69 +43,29 @@
     ],
     version = "1.9.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/hashbrown-0.12.3:hashbrown",
-            "//vendor_local_pkgs/crates/indexmap-1.9.2:build_script_build",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/hashbrown-0.12.3:hashbrown",
+        "//vendor_local_pkgs/crates/indexmap-1.9.2:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "indexmap_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["std"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,29 +74,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.9.2",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/autocfg-1.1.0:autocfg",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/autocfg-1.1.0:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "indexmap_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/instant-0.1.12/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/instant-0.1.12/BUILD.bazel
index 9f03584..1061dd6 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/instant-0.1.12/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/instant-0.1.12/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "instant",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.1.12",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/itoa-1.0.5/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/itoa-1.0.5/BUILD.bazel
index 47b76e2..cd1d607 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/itoa-1.0.5/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/itoa-1.0.5/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "itoa",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.5",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/lazy_static-1.4.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/lazy_static-1.4.0/BUILD.bazel
index 0750630..e52b084 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/lazy_static-1.4.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/lazy_static-1.4.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "lazy_static",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.4.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/libc-0.2.139/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/libc-0.2.139/BUILD.bazel
index 0288f36..edec82b 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/libc-0.2.139/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/libc-0.2.139/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "libc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "0.2.139",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/libc-0.2.139:build_script_build",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/libc-0.2.139:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "libc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.139",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "libc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/lock_api-0.4.9/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/lock_api-0.4.9/BUILD.bazel
index 62c6cc7..f926d12 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/lock_api-0.4.9/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/lock_api-0.4.9/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "lock_api",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.4.9",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/lock_api-0.4.9:build_script_build",
-            "//vendor_local_pkgs/crates/scopeguard-1.1.0:scopeguard",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/lock_api-0.4.9:build_script_build",
+        "//vendor_local_pkgs/crates/scopeguard-1.1.0:scopeguard",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "lock_api_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,29 +72,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.9",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/autocfg-1.1.0:autocfg",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/autocfg-1.1.0:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "lock_api_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/log-0.4.17/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/log-0.4.17/BUILD.bazel
index 20aa5e1..79014a5 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/log-0.4.17/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/log-0.4.17/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "log",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,69 +43,29 @@
     ],
     version = "0.4.17",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",
-            "//vendor_local_pkgs/crates/log-0.4.17:build_script_build",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",
+        "//vendor_local_pkgs/crates/log-0.4.17:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "log_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["std"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,28 +74,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.17",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "log_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/matchit-0.4.6/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/matchit-0.4.6/BUILD.bazel
index 2792113..14b8730 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/matchit-0.4.6/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/matchit-0.4.6/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "matchit",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.4.6",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/memchr-2.5.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/memchr-2.5.0/BUILD.bazel
index ad57143..a1774b0 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/memchr-2.5.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/memchr-2.5.0/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "memchr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "2.5.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/memchr-2.5.0:build_script_build",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/memchr-2.5.0:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "memchr_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "2.5.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "memchr_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/mime-0.3.16/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/mime-0.3.16/BUILD.bazel
index 3e0e96a..4156b85 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/mime-0.3.16/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/mime-0.3.16/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "mime",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.16",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/mio-0.7.14/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/mio-0.7.14/BUILD.bazel
index 980d953..c3aa816 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/mio-0.7.14/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/mio-0.7.14/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "mio",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "net",
@@ -56,29 +41,8 @@
         "uds",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,103 +51,80 @@
     ],
     version = "0.7.14",
     deps = [
+        "//vendor_local_pkgs/crates/log-0.4.17:log",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
             "//vendor_local_pkgs/crates/miow-0.3.7:miow",  # cfg(windows)
             "//vendor_local_pkgs/crates/ntapi-0.3.7:ntapi",  # cfg(windows)
             "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
             "//vendor_local_pkgs/crates/miow-0.3.7:miow",  # cfg(windows)
             "//vendor_local_pkgs/crates/ntapi-0.3.7:ntapi",  # cfg(windows)
             "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
             "//vendor_local_pkgs/crates/miow-0.3.7:miow",  # cfg(windows)
             "//vendor_local_pkgs/crates/ntapi-0.3.7:ntapi",  # cfg(windows)
             "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/log-0.4.17:log",  # common dependency
         ],
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/log-0.4.17:log",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/miow-0.3.7/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/miow-0.3.7/BUILD.bazel
index 7ce2759..2f66eb5 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/miow-0.3.7/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/miow-0.3.7/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "miow",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.3.7",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/ntapi-0.3.7/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/ntapi-0.3.7/BUILD.bazel
index 8c93176..5388846 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/ntapi-0.3.7/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/ntapi-0.3.7/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "ntapi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "user",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "0.3.7",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/ntapi-0.3.7:build_script_build",
-            "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/ntapi-0.3.7:build_script_build",
+        "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "ntapi_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "user",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.7",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "ntapi_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/nu-ansi-term-0.46.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/nu-ansi-term-0.46.0/BUILD.bazel
index 1fe6581..de3c3a7 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/nu-ansi-term-0.46.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/nu-ansi-term-0.46.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "nu_ansi_term",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,21 +41,17 @@
     ],
     version = "0.46.0",
     deps = [
+        "//vendor_local_pkgs/crates/overload-0.1.1:overload",
     ] + select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "//vendor_local_pkgs/crates/overload-0.1.1:overload",  # common dependency
             "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",  # cfg(target_os = "windows")
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "//vendor_local_pkgs/crates/overload-0.1.1:overload",  # common dependency
             "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",  # cfg(target_os = "windows")
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "//vendor_local_pkgs/crates/overload-0.1.1:overload",  # common dependency
             "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",  # cfg(target_os = "windows")
         ],
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/overload-0.1.1:overload",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/num_cpus-1.15.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/num_cpus-1.15.0/BUILD.bazel
index 970d805..fca4235 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/num_cpus-1.15.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/num_cpus-1.15.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "num_cpus",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "1.15.0",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(not(windows))
         ],
@@ -149,7 +110,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(not(windows))
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/once_cell-1.17.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/once_cell-1.17.0/BUILD.bazel
index 2f0fe04..cfd1448 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/once_cell-1.17.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/once_cell-1.17.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "once_cell",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
@@ -52,29 +37,8 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,4 @@
         "norustfmt",
     ],
     version = "1.17.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/overload-0.1.1/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/overload-0.1.1/BUILD.bazel
index 16282ed..95a70f5 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/overload-0.1.1/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/overload-0.1.1/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "overload",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/parking_lot-0.11.2/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/parking_lot-0.11.2/BUILD.bazel
index 50d3c57..4e746d7 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/parking_lot-0.11.2/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/parking_lot-0.11.2/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "parking_lot",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,11 +42,8 @@
     ],
     version = "0.11.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",
-            "//vendor_local_pkgs/crates/lock_api-0.4.9:lock_api",
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:parking_lot_core",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/instant-0.1.12:instant",
+        "//vendor_local_pkgs/crates/lock_api-0.4.9:lock_api",
+        "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:parking_lot_core",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/parking_lot_core-0.8.6/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/parking_lot_core-0.8.6/BUILD.bazel
index 4938728..9103cb4 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/parking_lot_core-0.8.6/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/parking_lot_core-0.8.6/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "parking_lot_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,224 +42,98 @@
     ],
     version = "0.8.6",
     deps = [
+        "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",
+        "//vendor_local_pkgs/crates/instant-0.1.12:instant",
+        "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",
+        "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
             "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
             "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
             "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",  # common dependency
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",  # common dependency
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",  # common dependency
         ],
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",
-            "//vendor_local_pkgs/crates/instant-0.1.12:instant",
-            "//vendor_local_pkgs/crates/parking_lot_core-0.8.6:build_script_build",
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",
-        ],
+        "//conditions:default": [],
     }),
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "parking_lot_core_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -310,28 +142,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.8.6",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "parking_lot_core_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/percent-encoding-2.2.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/percent-encoding-2.2.0/BUILD.bazel
index 9076f12..0ab211f 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/percent-encoding-2.2.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/percent-encoding-2.2.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "percent_encoding",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "2.2.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/pin-project-1.0.12/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/pin-project-1.0.12/BUILD.bazel
index 82c29a1..6f0d546 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/pin-project-1.0.12/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/pin-project-1.0.12/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,23 @@
 
 rust_library(
     name = "pin_project",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/pin-project-internal-1.0.12:pin_project_internal",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "//vendor_local_pkgs/crates/pin-project-internal-1.0.12:pin_project_internal",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +43,4 @@
         "norustfmt",
     ],
     version = "1.0.12",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/pin-project-internal-1.0.12/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/pin-project-internal-1.0.12/BUILD.bazel
index 81aef64..884d708 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/pin-project-internal-1.0.12/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/pin-project-internal-1.0.12/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,56 +19,20 @@
 
 rust_proc_macro(
     name = "pin_project_internal",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "1.0.12",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/proc-macro2-1.0.49:proc_macro2",
-            "//vendor_local_pkgs/crates/quote-1.0.23:quote",
-            "//vendor_local_pkgs/crates/syn-1.0.107:syn",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/proc-macro2-1.0.49:proc_macro2",
+        "//vendor_local_pkgs/crates/quote-1.0.23:quote",
+        "//vendor_local_pkgs/crates/syn-1.0.107:syn",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/pin-project-lite-0.2.9/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/pin-project-lite-0.2.9/BUILD.bazel
index 2fb1b44..3eba8b7 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/pin-project-lite-0.2.9/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/pin-project-lite-0.2.9/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "pin_project_lite",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.2.9",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/pin-utils-0.1.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/pin-utils-0.1.0/BUILD.bazel
index f07b935..da394ce 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/pin-utils-0.1.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/pin-utils-0.1.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "pin_utils",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/proc-macro2-1.0.49/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/proc-macro2-1.0.49/BUILD.bazel
index 8cf9766..b4a153b 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/proc-macro2-1.0.49/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/proc-macro2-1.0.49/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "proc_macro2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "1.0.49",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/proc-macro2-1.0.49:build_script_build",
-            "//vendor_local_pkgs/crates/unicode-ident-1.0.6:unicode_ident",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/proc-macro2-1.0.49:build_script_build",
+        "//vendor_local_pkgs/crates/unicode-ident-1.0.6:unicode_ident",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "proc-macro2_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.49",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "proc-macro2_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/quote-1.0.23/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/quote-1.0.23/BUILD.bazel
index 09f194d..2fa221a 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/quote-1.0.23/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/quote-1.0.23/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "quote",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "1.0.23",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/proc-macro2-1.0.49:proc_macro2",
-            "//vendor_local_pkgs/crates/quote-1.0.23:build_script_build",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/proc-macro2-1.0.49:proc_macro2",
+        "//vendor_local_pkgs/crates/quote-1.0.23:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "quote_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.23",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "quote_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/redox_syscall-0.2.16/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/redox_syscall-0.2.16/BUILD.bazel
index bddaf98..910d804 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/redox_syscall-0.2.16/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/redox_syscall-0.2.16/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "syscall",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.2.16",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/bitflags-1.3.2:bitflags",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/bitflags-1.3.2:bitflags",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/ryu-1.0.12/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/ryu-1.0.12/BUILD.bazel
index 7d55bf2..aa8c36d 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/ryu-1.0.12/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/ryu-1.0.12/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "ryu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.12",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/scopeguard-1.1.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/scopeguard-1.1.0/BUILD.bazel
index d749224..9fc23b9 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/scopeguard-1.1.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/scopeguard-1.1.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "scopeguard",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/serde-1.0.152/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/serde-1.0.152/BUILD.bazel
index 2570504..7934365 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/serde-1.0.152/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/serde-1.0.152/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "serde",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "1.0.152",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/serde-1.0.152:build_script_build",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/serde-1.0.152:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "serde_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.152",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "serde_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/serde_json-1.0.91/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/serde_json-1.0.91/BUILD.bazel
index 1f2304b..bb84f6e 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/serde_json-1.0.91/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/serde_json-1.0.91/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "serde_json",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "raw_value",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,36 +47,16 @@
     ],
     version = "1.0.91",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/itoa-1.0.5:itoa",
-            "//vendor_local_pkgs/crates/ryu-1.0.12:ryu",
-            "//vendor_local_pkgs/crates/serde-1.0.152:serde",
-            "//vendor_local_pkgs/crates/serde_json-1.0.91:build_script_build",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/itoa-1.0.5:itoa",
+        "//vendor_local_pkgs/crates/ryu-1.0.12:ryu",
+        "//vendor_local_pkgs/crates/serde-1.0.152:serde",
+        "//vendor_local_pkgs/crates/serde_json-1.0.91:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "serde_json_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "raw_value",
@@ -128,32 +68,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -162,28 +84,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.91",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "serde_json_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/serde_urlencoded-0.7.1/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/serde_urlencoded-0.7.1/BUILD.bazel
index 3922bf0..b6fc577 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/serde_urlencoded-0.7.1/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/serde_urlencoded-0.7.1/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "serde_urlencoded",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,12 +41,9 @@
     ],
     version = "0.7.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/form_urlencoded-1.1.0:form_urlencoded",
-            "//vendor_local_pkgs/crates/itoa-1.0.5:itoa",
-            "//vendor_local_pkgs/crates/ryu-1.0.12:ryu",
-            "//vendor_local_pkgs/crates/serde-1.0.152:serde",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/form_urlencoded-1.1.0:form_urlencoded",
+        "//vendor_local_pkgs/crates/itoa-1.0.5:itoa",
+        "//vendor_local_pkgs/crates/ryu-1.0.12:ryu",
+        "//vendor_local_pkgs/crates/serde-1.0.152:serde",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/sharded-slab-0.1.4/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/sharded-slab-0.1.4/BUILD.bazel
index ea3d405..9c192e3 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/sharded-slab-0.1.4/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/sharded-slab-0.1.4/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "sharded_slab",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.1.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/lazy_static-1.4.0:lazy_static",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/lazy_static-1.4.0:lazy_static",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/signal-hook-registry-1.4.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/signal-hook-registry-1.4.0/BUILD.bazel
index e1a2d54..2bbd7ba 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/signal-hook-registry-1.4.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/signal-hook-registry-1.4.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "signal_hook_registry",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "1.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/libc-0.2.139:libc",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/libc-0.2.139:libc",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/slab-0.4.7/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/slab-0.4.7/BUILD.bazel
index 90d193a..e42b0a6 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/slab-0.4.7/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/slab-0.4.7/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "slab",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "0.4.7",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/slab-0.4.7:build_script_build",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/slab-0.4.7:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "slab_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,29 +79,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.7",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/autocfg-1.1.0:autocfg",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/autocfg-1.1.0:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "slab_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/smallvec-1.10.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/smallvec-1.10.0/BUILD.bazel
index c5fb5bd..b5873ff 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/smallvec-1.10.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/smallvec-1.10.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "smallvec",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.10.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/socket2-0.4.7/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/socket2-0.4.7/BUILD.bazel
index ba0c9d6..15681a9 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/socket2-0.4.7/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/socket2-0.4.7/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "socket2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "all",
-    ],
+    ),
+    crate_features = ["all"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,8 +41,7 @@
         "norustfmt",
     ],
     version = "0.4.7",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
         ],
@@ -147,7 +108,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/syn-1.0.107/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/syn-1.0.107/BUILD.bazel
index 29a3871..a01f4f8 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/syn-1.0.107/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/syn-1.0.107/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "syn",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "clone-impls",
         "default",
@@ -64,29 +45,8 @@
         "visit-mut",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -95,36 +55,16 @@
     ],
     version = "1.0.107",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/proc-macro2-1.0.49:proc_macro2",
-            "//vendor_local_pkgs/crates/quote-1.0.23:quote",
-            "//vendor_local_pkgs/crates/syn-1.0.107:build_script_build",
-            "//vendor_local_pkgs/crates/unicode-ident-1.0.6:unicode_ident",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/proc-macro2-1.0.49:proc_macro2",
+        "//vendor_local_pkgs/crates/quote-1.0.23:quote",
+        "//vendor_local_pkgs/crates/syn-1.0.107:build_script_build",
+        "//vendor_local_pkgs/crates/unicode-ident-1.0.6:unicode_ident",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "syn_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "clone-impls",
         "default",
@@ -144,32 +84,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -178,28 +100,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.107",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "syn_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/sync_wrapper-0.1.1/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/sync_wrapper-0.1.1/BUILD.bazel
index 99aaad8..3c4c898 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/sync_wrapper-0.1.1/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/sync_wrapper-0.1.1/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "sync_wrapper",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/thread_local-1.1.4/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/thread_local-1.1.4/BUILD.bazel
index 859918e..fa89fbd 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/thread_local-1.1.4/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/thread_local-1.1.4/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "thread_local",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "1.1.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/tokio-1.16.1/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/tokio-1.16.1/BUILD.bazel
index cba59bd..c10c5a5 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/tokio-1.16.1/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/tokio-1.16.1/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "tokio",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "bytes",
         "default",
@@ -71,30 +56,11 @@
         "winapi",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/tokio-macros-1.8.2:tokio_macros",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "//vendor_local_pkgs/crates/tokio-macros-1.8.2:tokio_macros",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -103,254 +69,99 @@
     ],
     version = "1.16.1",
     deps = [
+        "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
+        "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",
+        "//vendor_local_pkgs/crates/mio-0.7.14:mio",
+        "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",
+        "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",
+        "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",
+        "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/winapi-0.3.9:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",  # common dependency
             "//vendor_local_pkgs/crates/libc-0.2.139:libc",  # cfg(unix)
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",  # common dependency
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",  # common dependency
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",  # common dependency
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",  # common dependency
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",  # common dependency
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",  # common dependency
             "//vendor_local_pkgs/crates/signal-hook-registry-1.4.0:signal_hook_registry",  # cfg(unix)
         ],
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
-            "//vendor_local_pkgs/crates/memchr-2.5.0:memchr",
-            "//vendor_local_pkgs/crates/mio-0.7.14:mio",
-            "//vendor_local_pkgs/crates/num_cpus-1.15.0:num_cpus",
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",
-            "//vendor_local_pkgs/crates/parking_lot-0.11.2:parking_lot",
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/tokio-macros-1.8.2/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/tokio-macros-1.8.2/BUILD.bazel
index 2e0c361..e5dea96 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/tokio-macros-1.8.2/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/tokio-macros-1.8.2/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,56 +19,20 @@
 
 rust_proc_macro(
     name = "tokio_macros",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "1.8.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/proc-macro2-1.0.49:proc_macro2",
-            "//vendor_local_pkgs/crates/quote-1.0.23:quote",
-            "//vendor_local_pkgs/crates/syn-1.0.107:syn",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/proc-macro2-1.0.49:proc_macro2",
+        "//vendor_local_pkgs/crates/quote-1.0.23:quote",
+        "//vendor_local_pkgs/crates/syn-1.0.107:syn",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/tokio-util-0.7.2/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/tokio-util-0.7.2/BUILD.bazel
index f72fb41..93137ad 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/tokio-util-0.7.2/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/tokio-util-0.7.2/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "tokio_util",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "codec",
         "default",
         "tracing",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,14 +46,11 @@
     ],
     version = "0.7.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
-            "//vendor_local_pkgs/crates/futures-core-0.3.25:futures_core",
-            "//vendor_local_pkgs/crates/futures-sink-0.3.25:futures_sink",
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
-            "//vendor_local_pkgs/crates/tokio-1.16.1:tokio",
-            "//vendor_local_pkgs/crates/tracing-0.1.37:tracing",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
+        "//vendor_local_pkgs/crates/futures-core-0.3.25:futures_core",
+        "//vendor_local_pkgs/crates/futures-sink-0.3.25:futures_sink",
+        "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
+        "//vendor_local_pkgs/crates/tokio-1.16.1:tokio",
+        "//vendor_local_pkgs/crates/tracing-0.1.37:tracing",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/tower-0.4.13/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/tower-0.4.13/BUILD.bazel
index 8715aa9..171fe89 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/tower-0.4.13/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/tower-0.4.13/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "tower",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "__common",
         "buffer",
@@ -61,29 +46,8 @@
         "util",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -92,17 +56,14 @@
     ],
     version = "0.4.13",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/futures-core-0.3.25:futures_core",
-            "//vendor_local_pkgs/crates/futures-util-0.3.25:futures_util",
-            "//vendor_local_pkgs/crates/pin-project-1.0.12:pin_project",
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
-            "//vendor_local_pkgs/crates/tokio-1.16.1:tokio",
-            "//vendor_local_pkgs/crates/tokio-util-0.7.2:tokio_util",
-            "//vendor_local_pkgs/crates/tower-layer-0.3.2:tower_layer",
-            "//vendor_local_pkgs/crates/tower-service-0.3.2:tower_service",
-            "//vendor_local_pkgs/crates/tracing-0.1.37:tracing",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/futures-core-0.3.25:futures_core",
+        "//vendor_local_pkgs/crates/futures-util-0.3.25:futures_util",
+        "//vendor_local_pkgs/crates/pin-project-1.0.12:pin_project",
+        "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
+        "//vendor_local_pkgs/crates/tokio-1.16.1:tokio",
+        "//vendor_local_pkgs/crates/tokio-util-0.7.2:tokio_util",
+        "//vendor_local_pkgs/crates/tower-layer-0.3.2:tower_layer",
+        "//vendor_local_pkgs/crates/tower-service-0.3.2:tower_service",
+        "//vendor_local_pkgs/crates/tracing-0.1.37:tracing",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/tower-http-0.2.5/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/tower-http-0.2.5/BUILD.bazel
index 985598e..e385608 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/tower-http-0.2.5/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/tower-http-0.2.5/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "tower_http",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "map-response-body",
@@ -54,29 +39,8 @@
         "util",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,20 +49,17 @@
     ],
     version = "0.2.5",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/bitflags-1.3.2:bitflags",
-            "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
-            "//vendor_local_pkgs/crates/futures-core-0.3.25:futures_core",
-            "//vendor_local_pkgs/crates/futures-util-0.3.25:futures_util",
-            "//vendor_local_pkgs/crates/http-0.2.8:http",
-            "//vendor_local_pkgs/crates/http-body-0.4.5:http_body",
-            "//vendor_local_pkgs/crates/http-range-header-0.3.0:http_range_header",
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
-            "//vendor_local_pkgs/crates/tower-0.4.13:tower",
-            "//vendor_local_pkgs/crates/tower-layer-0.3.2:tower_layer",
-            "//vendor_local_pkgs/crates/tower-service-0.3.2:tower_service",
-            "//vendor_local_pkgs/crates/tracing-0.1.37:tracing",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/bitflags-1.3.2:bitflags",
+        "//vendor_local_pkgs/crates/bytes-1.3.0:bytes",
+        "//vendor_local_pkgs/crates/futures-core-0.3.25:futures_core",
+        "//vendor_local_pkgs/crates/futures-util-0.3.25:futures_util",
+        "//vendor_local_pkgs/crates/http-0.2.8:http",
+        "//vendor_local_pkgs/crates/http-body-0.4.5:http_body",
+        "//vendor_local_pkgs/crates/http-range-header-0.3.0:http_range_header",
+        "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
+        "//vendor_local_pkgs/crates/tower-0.4.13:tower",
+        "//vendor_local_pkgs/crates/tower-layer-0.3.2:tower_layer",
+        "//vendor_local_pkgs/crates/tower-service-0.3.2:tower_service",
+        "//vendor_local_pkgs/crates/tracing-0.1.37:tracing",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/tower-layer-0.3.2/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/tower-layer-0.3.2/BUILD.bazel
index 514009e..fb8a2ec 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/tower-layer-0.3.2/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/tower-layer-0.3.2/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tower_layer",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/tower-service-0.3.2/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/tower-service-0.3.2/BUILD.bazel
index 92b1514..fe92d72 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/tower-service-0.3.2/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/tower-service-0.3.2/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tower_service",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/tracing-0.1.37/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/tracing-0.1.37/BUILD.bazel
index 83d2deb..9930263 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/tracing-0.1.37/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/tracing-0.1.37/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "tracing",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "attributes",
         "default",
@@ -53,30 +38,11 @@
         "tracing-attributes",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/tracing-attributes-0.1.23:tracing_attributes",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "//vendor_local_pkgs/crates/tracing-attributes-0.1.23:tracing_attributes",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,12 +51,9 @@
     ],
     version = "0.1.37",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",
-            "//vendor_local_pkgs/crates/log-0.4.17:log",
-            "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
-            "//vendor_local_pkgs/crates/tracing-core-0.1.30:tracing_core",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/cfg-if-1.0.0:cfg_if",
+        "//vendor_local_pkgs/crates/log-0.4.17:log",
+        "//vendor_local_pkgs/crates/pin-project-lite-0.2.9:pin_project_lite",
+        "//vendor_local_pkgs/crates/tracing-core-0.1.30:tracing_core",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/tracing-attributes-0.1.23/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/tracing-attributes-0.1.23/BUILD.bazel
index 44a3e88..a6d8b99 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/tracing-attributes-0.1.23/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/tracing-attributes-0.1.23/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,56 +19,20 @@
 
 rust_proc_macro(
     name = "tracing_attributes",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.1.23",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/proc-macro2-1.0.49:proc_macro2",
-            "//vendor_local_pkgs/crates/quote-1.0.23:quote",
-            "//vendor_local_pkgs/crates/syn-1.0.107:syn",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/proc-macro2-1.0.49:proc_macro2",
+        "//vendor_local_pkgs/crates/quote-1.0.23:quote",
+        "//vendor_local_pkgs/crates/syn-1.0.107:syn",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/tracing-core-0.1.30/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/tracing-core-0.1.30/BUILD.bazel
index 52a87fd..600963b 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/tracing-core-0.1.30/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/tracing-core-0.1.30/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "tracing_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "once_cell",
@@ -52,29 +37,8 @@
         "valuable",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -83,9 +47,6 @@
     ],
     version = "0.1.30",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/once_cell-1.17.0:once_cell",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/tracing-log-0.1.3/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/tracing-log-0.1.3/BUILD.bazel
index fe55aa5..fbc8196 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/tracing-log-0.1.3/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/tracing-log-0.1.3/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "tracing_log",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "log-tracer",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,11 +45,8 @@
     ],
     version = "0.1.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/lazy_static-1.4.0:lazy_static",
-            "//vendor_local_pkgs/crates/log-0.4.17:log",
-            "//vendor_local_pkgs/crates/tracing-core-0.1.30:tracing_core",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/lazy_static-1.4.0:lazy_static",
+        "//vendor_local_pkgs/crates/log-0.4.17:log",
+        "//vendor_local_pkgs/crates/tracing-core-0.1.30:tracing_core",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/tracing-subscriber-0.3.16/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/tracing-subscriber-0.3.16/BUILD.bazel
index 1504d16..661a2c3 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/tracing-subscriber-0.3.16/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/tracing-subscriber-0.3.16/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "tracing_subscriber",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "ansi",
@@ -59,29 +44,8 @@
         "tracing-log",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -90,14 +54,11 @@
     ],
     version = "0.3.16",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/nu-ansi-term-0.46.0:nu_ansi_term",
-            "//vendor_local_pkgs/crates/sharded-slab-0.1.4:sharded_slab",
-            "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",
-            "//vendor_local_pkgs/crates/thread_local-1.1.4:thread_local",
-            "//vendor_local_pkgs/crates/tracing-core-0.1.30:tracing_core",
-            "//vendor_local_pkgs/crates/tracing-log-0.1.3:tracing_log",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/nu-ansi-term-0.46.0:nu_ansi_term",
+        "//vendor_local_pkgs/crates/sharded-slab-0.1.4:sharded_slab",
+        "//vendor_local_pkgs/crates/smallvec-1.10.0:smallvec",
+        "//vendor_local_pkgs/crates/thread_local-1.1.4:thread_local",
+        "//vendor_local_pkgs/crates/tracing-core-0.1.30:tracing_core",
+        "//vendor_local_pkgs/crates/tracing-log-0.1.3:tracing_log",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/try-lock-0.2.3/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/try-lock-0.2.3/BUILD.bazel
index 52f104c..8028c49 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/try-lock-0.2.3/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/try-lock-0.2.3/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "try_lock",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.2.3",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/unicode-ident-1.0.6/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/unicode-ident-1.0.6/BUILD.bazel
index 99c6294..639ea16 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/unicode-ident-1.0.6/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/unicode-ident-1.0.6/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "unicode_ident",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.6",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/valuable-0.1.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/valuable-0.1.0/BUILD.bazel
index 0ef41bd..b0cec0e 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/valuable-0.1.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/valuable-0.1.0/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "valuable",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "0.1.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/valuable-0.1.0:build_script_build",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/valuable-0.1.0:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "valuable_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "alloc",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.1.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "valuable_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/want-0.3.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/want-0.3.0/BUILD.bazel
index 935363e..a25e174 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/want-0.3.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/want-0.3.0/BUILD.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "want",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.3.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/log-0.4.17:log",
-            "//vendor_local_pkgs/crates/try-lock-0.2.3:try_lock",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/log-0.4.17:log",
+        "//vendor_local_pkgs/crates/try-lock-0.2.3:try_lock",
+    ],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/winapi-0.3.9/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/winapi-0.3.9/BUILD.bazel
index f6c1e09..28be84f 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/winapi-0.3.9/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/winapi-0.3.9/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "winapi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "cfg",
         "consoleapi",
@@ -83,29 +64,8 @@
         "ws2tcpip",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -114,33 +74,13 @@
     ],
     version = "0.3.9",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/winapi-0.3.9:build_script_build",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/winapi-0.3.9:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "cfg",
         "consoleapi",
@@ -179,32 +119,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -213,28 +135,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.9",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/winapi-i686-pc-windows-gnu-0.4.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/winapi-i686-pc-windows-gnu-0.4.0/BUILD.bazel
index 7233b0e..93cc317 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/winapi-i686-pc-windows-gnu-0.4.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/winapi-i686-pc-windows-gnu-0.4.0/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_i686_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/winapi-i686-pc-windows-gnu-0.4.0:build_script_build",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/winapi-i686-pc-windows-gnu-0.4.0:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-i686-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-i686-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_local_pkgs/crates/winapi-x86_64-pc-windows-gnu-0.4.0/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/winapi-x86_64-pc-windows-gnu-0.4.0/BUILD.bazel
index fdce5f4..d62c9ac 100644
--- a/examples/crate_universe/vendor_local_pkgs/crates/winapi-x86_64-pc-windows-gnu-0.4.0/BUILD.bazel
+++ b/examples/crate_universe/vendor_local_pkgs/crates/winapi-x86_64-pc-windows-gnu-0.4.0/BUILD.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_local_pkgs:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_x86_64_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "//vendor_local_pkgs/crates/winapi-x86_64-pc-windows-gnu-0.4.0:build_script_build",
-        ],
-    }),
+        "//vendor_local_pkgs/crates/winapi-x86_64-pc-windows-gnu-0.4.0:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-x86_64-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-x86_64-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.async-stream-0.3.3.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.async-stream-0.3.3.bazel
index 6990547..b2adacd 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.async-stream-0.3.3.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.async-stream-0.3.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,23 @@
 
 rust_library(
     name = "async_stream",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__async-stream-impl-0.3.3//:async_stream_impl",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@crates_vendor_manifests__async-stream-impl-0.3.3//:async_stream_impl",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,6 @@
     ],
     version = "0.3.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__futures-core-0.3.25//:futures_core",
-        ],
-    }),
+        "@crates_vendor_manifests__futures-core-0.3.25//:futures_core",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.async-stream-impl-0.3.3.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.async-stream-impl-0.3.3.bazel
index 3c76e5f..1629260 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.async-stream-impl-0.3.3.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.async-stream-impl-0.3.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,56 +19,20 @@
 
 rust_proc_macro(
     name = "async_stream_impl",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.3.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__proc-macro2-1.0.49//:proc_macro2",
-            "@crates_vendor_manifests__quote-1.0.23//:quote",
-            "@crates_vendor_manifests__syn-1.0.107//:syn",
-        ],
-    }),
+        "@crates_vendor_manifests__proc-macro2-1.0.49//:proc_macro2",
+        "@crates_vendor_manifests__quote-1.0.23//:quote",
+        "@crates_vendor_manifests__syn-1.0.107//:syn",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.autocfg-1.1.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.autocfg-1.1.0.bazel
index 9a8890f..5352fe0 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.autocfg-1.1.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.autocfg-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "autocfg",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.bazel
index 868d258..f3ca353 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.bazel
@@ -13,21 +13,15 @@
         "cargo-bazel.json",
         "crates.bzl",
         "defs.bzl",
-    ] + glob(
-        include = ["*.bazel"],
-        exclude = [],
-    ),
+    ] + glob(["*.bazel"]),
 )
 
 filegroup(
     name = "srcs",
-    srcs = glob(
-        include = [
-            "*.bazel",
-            "*.bzl",
-        ],
-        exclude = [],
-    ),
+    srcs = glob([
+        "*.bazel",
+        "*.bzl",
+    ]),
 )
 
 # Workspace Member Dependencies
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.bitflags-1.3.2.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.bitflags-1.3.2.bazel
index 97f7282..14cc1d2 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.bitflags-1.3.2.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.bitflags-1.3.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "bitflags",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "1.3.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.bytes-1.3.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.bytes-1.3.0.bazel
index 41e24b1..b9c718e 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.bytes-1.3.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.bytes-1.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "bytes",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "1.3.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.cfg-if-1.0.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.cfg-if-1.0.0.bazel
index 4eaa49f..1a12fa3 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.cfg-if-1.0.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.cfg-if-1.0.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cfg_if",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.fastrand-1.8.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.fastrand-1.8.0.bazel
index 3f810c2..033f63c 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.fastrand-1.8.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.fastrand-1.8.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "fastrand",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,15 +40,13 @@
         "norustfmt",
     ],
     version = "1.8.0",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:wasm32-unknown-unknown": [
             "@crates_vendor_manifests__instant-0.1.12//:instant",  # cfg(target_arch = "wasm32")
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
             "@crates_vendor_manifests__instant-0.1.12//:instant",  # cfg(target_arch = "wasm32")
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.futures-core-0.3.25.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.futures-core-0.3.25.bazel
index 7284629..88307a1 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.futures-core-0.3.25.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.futures-core-0.3.25.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "futures_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,33 +47,13 @@
     ],
     version = "0.3.25",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__futures-core-0.3.25//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_manifests__futures-core-0.3.25//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "futures-core_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "alloc",
         "default",
@@ -125,32 +65,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -159,28 +81,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.25",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "futures-core_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.hermit-abi-0.2.6.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.hermit-abi-0.2.6.bazel
index 30d5cd7..b4b1b25 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.hermit-abi-0.2.6.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.hermit-abi-0.2.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hermit_abi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.2.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__libc-0.2.139//:libc",
-        ],
-    }),
+        "@crates_vendor_manifests__libc-0.2.139//:libc",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.instant-0.1.12.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.instant-0.1.12.bazel
index 356e975..021b958 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.instant-0.1.12.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.instant-0.1.12.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "instant",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.1.12",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",
-        ],
-    }),
+        "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.libc-0.2.139.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.libc-0.2.139.bazel
index 2ab1308..e3d2178 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.libc-0.2.139.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.libc-0.2.139.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "libc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "0.2.139",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__libc-0.2.139//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_manifests__libc-0.2.139//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "libc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.139",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "libc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.lock_api-0.4.9.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.lock_api-0.4.9.bazel
index ef89ba2..009b012 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.lock_api-0.4.9.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.lock_api-0.4.9.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "lock_api",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.4.9",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__lock_api-0.4.9//:build_script_build",
-            "@crates_vendor_manifests__scopeguard-1.1.0//:scopeguard",
-        ],
-    }),
+        "@crates_vendor_manifests__lock_api-0.4.9//:build_script_build",
+        "@crates_vendor_manifests__scopeguard-1.1.0//:scopeguard",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "lock_api_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,29 +72,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.9",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@crates_vendor_manifests__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "lock_api_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.log-0.4.17.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.log-0.4.17.bazel
index 0fcae68..458389c 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.log-0.4.17.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.log-0.4.17.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "log",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.4.17",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",
-            "@crates_vendor_manifests__log-0.4.17//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",
+        "@crates_vendor_manifests__log-0.4.17//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "log_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,28 +72,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.17",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "log_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.memchr-2.5.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.memchr-2.5.0.bazel
index 6c98bf7..d180645 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.memchr-2.5.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.memchr-2.5.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "memchr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "2.5.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__memchr-2.5.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_manifests__memchr-2.5.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "memchr_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "2.5.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "memchr_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.mio-0.8.5.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.mio-0.8.5.bazel
index 72a20d2..458690a 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.mio-0.8.5.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.mio-0.8.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "mio",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "net",
@@ -52,29 +37,8 @@
         "os-poll",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -83,102 +47,78 @@
     ],
     version = "0.8.5",
     deps = [
+        "@crates_vendor_manifests__log-0.4.17//:log",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
             "@crates_vendor_manifests__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
             "@crates_vendor_manifests__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(target_os = "wasi")
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
             "@crates_vendor_manifests__wasi-0.11.0-wasi-snapshot-preview1//:wasi",  # cfg(target_os = "wasi")
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
             "@crates_vendor_manifests__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__log-0.4.17//:log",  # common dependency
         ],
-        "//conditions:default": [
-            "@crates_vendor_manifests__log-0.4.17//:log",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.num_cpus-1.15.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.num_cpus-1.15.0.bazel
index a9e0bd0..1df2604 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.num_cpus-1.15.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.num_cpus-1.15.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "num_cpus",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "1.15.0",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
@@ -149,7 +110,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.parking_lot-0.12.1.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.parking_lot-0.12.1.bazel
index d6e67d7..061a632 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.parking_lot-0.12.1.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.parking_lot-0.12.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "parking_lot",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,10 +42,7 @@
     ],
     version = "0.12.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__lock_api-0.4.9//:lock_api",
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:parking_lot_core",
-        ],
-    }),
+        "@crates_vendor_manifests__lock_api-0.4.9//:lock_api",
+        "@crates_vendor_manifests__parking_lot_core-0.9.5//:parking_lot_core",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.parking_lot_core-0.9.5.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.parking_lot_core-0.9.5.bazel
index c6c1ab4..d984df8 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.parking_lot_core-0.9.5.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.parking_lot_core-0.9.5.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "parking_lot_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,201 +42,97 @@
     ],
     version = "0.9.5",
     deps = [
+        "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",
+        "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",
+        "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
             "@crates_vendor_manifests__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
             "@crates_vendor_manifests__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
             "@crates_vendor_manifests__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",  # common dependency
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",  # common dependency
         ],
-        "//conditions:default": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",
-            "@crates_vendor_manifests__parking_lot_core-0.9.5//:build_script_build",
-            "@crates_vendor_manifests__smallvec-1.10.0//:smallvec",
-        ],
+        "//conditions:default": [],
     }),
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "parking_lot_core_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -287,28 +141,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.9.5",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "parking_lot_core_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.pin-project-lite-0.2.9.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.pin-project-lite-0.2.9.bazel
index 8968ebb..66589ef 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.pin-project-lite-0.2.9.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.pin-project-lite-0.2.9.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "pin_project_lite",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.2.9",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.proc-macro2-1.0.49.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.proc-macro2-1.0.49.bazel
index 8424bf9..91a899b 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.proc-macro2-1.0.49.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.proc-macro2-1.0.49.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "proc_macro2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "1.0.49",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__proc-macro2-1.0.49//:build_script_build",
-            "@crates_vendor_manifests__unicode-ident-1.0.6//:unicode_ident",
-        ],
-    }),
+        "@crates_vendor_manifests__proc-macro2-1.0.49//:build_script_build",
+        "@crates_vendor_manifests__unicode-ident-1.0.6//:unicode_ident",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "proc-macro2_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.49",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "proc-macro2_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.quote-1.0.23.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.quote-1.0.23.bazel
index 35ba600..3e70e4d 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.quote-1.0.23.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.quote-1.0.23.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "quote",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "1.0.23",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__proc-macro2-1.0.49//:proc_macro2",
-            "@crates_vendor_manifests__quote-1.0.23//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_manifests__proc-macro2-1.0.49//:proc_macro2",
+        "@crates_vendor_manifests__quote-1.0.23//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "quote_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.23",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "quote_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.redox_syscall-0.2.16.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.redox_syscall-0.2.16.bazel
index 1480714..37dcdf5 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.redox_syscall-0.2.16.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.redox_syscall-0.2.16.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "syscall",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.2.16",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__bitflags-1.3.2//:bitflags",
-        ],
-    }),
+        "@crates_vendor_manifests__bitflags-1.3.2//:bitflags",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.remove_dir_all-0.5.3.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.remove_dir_all-0.5.3.bazel
index 21d5450..491ceee 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.remove_dir_all-0.5.3.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.remove_dir_all-0.5.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "remove_dir_all",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.5.3",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@crates_vendor_manifests__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@crates_vendor_manifests__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.scopeguard-1.1.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.scopeguard-1.1.0.bazel
index 0b36aad..7eb3263 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.scopeguard-1.1.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.scopeguard-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "scopeguard",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.signal-hook-registry-1.4.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.signal-hook-registry-1.4.0.bazel
index b4105a2..057c348 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.signal-hook-registry-1.4.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.signal-hook-registry-1.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "signal_hook_registry",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "1.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__libc-0.2.139//:libc",
-        ],
-    }),
+        "@crates_vendor_manifests__libc-0.2.139//:libc",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.smallvec-1.10.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.smallvec-1.10.0.bazel
index 53bd2c9..2133829 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.smallvec-1.10.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.smallvec-1.10.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "smallvec",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.10.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.socket2-0.4.7.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.socket2-0.4.7.bazel
index 9dfe692..2e469a2 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.socket2-0.4.7.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.socket2-0.4.7.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "socket2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "all",
-    ],
+    ),
+    crate_features = ["all"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,8 +41,7 @@
         "norustfmt",
     ],
     version = "0.4.7",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
         ],
@@ -147,7 +108,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.syn-1.0.107.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.syn-1.0.107.bazel
index a9bd81d..02bc7ab 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.syn-1.0.107.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.syn-1.0.107.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "syn",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "clone-impls",
         "default",
@@ -62,29 +43,8 @@
         "visit-mut",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -93,36 +53,16 @@
     ],
     version = "1.0.107",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__proc-macro2-1.0.49//:proc_macro2",
-            "@crates_vendor_manifests__quote-1.0.23//:quote",
-            "@crates_vendor_manifests__syn-1.0.107//:build_script_build",
-            "@crates_vendor_manifests__unicode-ident-1.0.6//:unicode_ident",
-        ],
-    }),
+        "@crates_vendor_manifests__proc-macro2-1.0.49//:proc_macro2",
+        "@crates_vendor_manifests__quote-1.0.23//:quote",
+        "@crates_vendor_manifests__syn-1.0.107//:build_script_build",
+        "@crates_vendor_manifests__unicode-ident-1.0.6//:unicode_ident",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "syn_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "clone-impls",
         "default",
@@ -140,32 +80,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -174,28 +96,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.107",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "syn_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tempfile-3.3.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tempfile-3.3.0.bazel
index f136a77..19ab365 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tempfile-3.3.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tempfile-3.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tempfile",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,149 +41,79 @@
     ],
     version = "3.3.0",
     deps = [
+        "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",
+        "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",
+        "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
             "@crates_vendor_manifests__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
             "@crates_vendor_manifests__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
             "@crates_vendor_manifests__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
-        "//conditions:default": [
-            "@crates_vendor_manifests__cfg-if-1.0.0//:cfg_if",
-            "@crates_vendor_manifests__fastrand-1.8.0//:fastrand",
-            "@crates_vendor_manifests__remove_dir_all-0.5.3//:remove_dir_all",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-1.23.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-1.23.0.bazel
index 10b0569..c1cb31c 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-1.23.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-1.23.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "tokio",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "bytes",
         "default",
@@ -77,30 +58,11 @@
         "windows-sys",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__tokio-macros-1.8.2//:tokio_macros",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@crates_vendor_manifests__tokio-macros-1.8.2//:tokio_macros",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -109,320 +71,134 @@
     ],
     version = "1.23.0",
     deps = [
+        "@crates_vendor_manifests__bytes-1.3.0//:bytes",
+        "@crates_vendor_manifests__memchr-2.5.0//:memchr",
+        "@crates_vendor_manifests__mio-0.8.5//:mio",
+        "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",
+        "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",
+        "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",
+        "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
             "@crates_vendor_manifests__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
             "@crates_vendor_manifests__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:riscv32imc-unknown-none-elf": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:riscv64gc-unknown-none-elf": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
             "@crates_vendor_manifests__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_manifests__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_manifests__mio-0.8.5//:mio",  # common dependency
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",  # common dependency
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_manifests__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
             "@crates_vendor_manifests__socket2-0.4.7//:socket2",  # cfg(not(any(target_arch = "wasm32", target_arch = "wasm64")))
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",  # common dependency
         ],
-        "//conditions:default": [
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",
-            "@crates_vendor_manifests__memchr-2.5.0//:memchr",
-            "@crates_vendor_manifests__mio-0.8.5//:mio",
-            "@crates_vendor_manifests__num_cpus-1.15.0//:num_cpus",
-            "@crates_vendor_manifests__parking_lot-0.12.1//:parking_lot",
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",
-            "@crates_vendor_manifests__tokio-1.23.0//:build_script_build",
-        ],
+        "//conditions:default": [],
     }),
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "tokio_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "bytes",
         "default",
@@ -455,32 +231,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -489,29 +247,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.23.0",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@crates_vendor_manifests__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "tokio_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-macros-1.8.2.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-macros-1.8.2.bazel
index 0515ffb..1330503 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-macros-1.8.2.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-macros-1.8.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,56 +19,20 @@
 
 rust_proc_macro(
     name = "tokio_macros",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "1.8.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__proc-macro2-1.0.49//:proc_macro2",
-            "@crates_vendor_manifests__quote-1.0.23//:quote",
-            "@crates_vendor_manifests__syn-1.0.107//:syn",
-        ],
-    }),
+        "@crates_vendor_manifests__proc-macro2-1.0.49//:proc_macro2",
+        "@crates_vendor_manifests__quote-1.0.23//:quote",
+        "@crates_vendor_manifests__syn-1.0.107//:syn",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-stream-0.1.11.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-stream-0.1.11.bazel
index a06a79d..179278a 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-stream-0.1.11.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-stream-0.1.11.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "tokio_stream",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "time",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,11 +45,8 @@
     ],
     version = "0.1.11",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__futures-core-0.3.25//:futures_core",
-            "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",
-            "@crates_vendor_manifests__tokio-1.23.0//:tokio",
-        ],
-    }),
+        "@crates_vendor_manifests__futures-core-0.3.25//:futures_core",
+        "@crates_vendor_manifests__pin-project-lite-0.2.9//:pin_project_lite",
+        "@crates_vendor_manifests__tokio-1.23.0//:tokio",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-test-0.4.2.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-test-0.4.2.bazel
index 79862ef..1e1ac4e 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-test-0.4.2.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tokio-test-0.4.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_test",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,13 +41,10 @@
     ],
     version = "0.4.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__async-stream-0.3.3//:async_stream",
-            "@crates_vendor_manifests__bytes-1.3.0//:bytes",
-            "@crates_vendor_manifests__futures-core-0.3.25//:futures_core",
-            "@crates_vendor_manifests__tokio-1.23.0//:tokio",
-            "@crates_vendor_manifests__tokio-stream-0.1.11//:tokio_stream",
-        ],
-    }),
+        "@crates_vendor_manifests__async-stream-0.3.3//:async_stream",
+        "@crates_vendor_manifests__bytes-1.3.0//:bytes",
+        "@crates_vendor_manifests__futures-core-0.3.25//:futures_core",
+        "@crates_vendor_manifests__tokio-1.23.0//:tokio",
+        "@crates_vendor_manifests__tokio-stream-0.1.11//:tokio_stream",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.unicode-ident-1.0.6.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.unicode-ident-1.0.6.bazel
index a28f7da..e1c4df7 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.unicode-ident-1.0.6.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.unicode-ident-1.0.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "unicode_ident",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.6",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel
index 7f588d7..89fcd86 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "wasi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "0.11.0+wasi-snapshot-preview1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.winapi-0.3.9.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.winapi-0.3.9.bazel
index 5d5bed8..036c847 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.winapi-0.3.9.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.winapi-0.3.9.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "winapi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "errhandlingapi",
         "fileapi",
@@ -61,29 +42,8 @@
         "ws2tcpip",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -92,33 +52,13 @@
     ],
     version = "0.3.9",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__winapi-0.3.9//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_manifests__winapi-0.3.9//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "errhandlingapi",
         "fileapi",
@@ -135,32 +75,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -169,28 +91,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.9",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
index 3e0f626..dc55974 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_i686_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__winapi-i686-pc-windows-gnu-0.4.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_manifests__winapi-i686-pc-windows-gnu-0.4.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-i686-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-i686-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
index 9eca761..96d1925 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_x86_64_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__winapi-x86_64-pc-windows-gnu-0.4.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_manifests__winapi-x86_64-pc-windows-gnu-0.4.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-x86_64-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-x86_64-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows-sys-0.42.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows-sys-0.42.0.bazel
index fe73191..2e16655 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows-sys-0.42.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows-sys-0.42.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "windows_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "Win32",
         "Win32_Foundation",
@@ -65,29 +50,8 @@
         "default",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -95,8 +59,7 @@
         "norustfmt",
     ],
     version = "0.42.0",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@crates_vendor_manifests__windows_aarch64_msvc-0.42.0//:windows_aarch64_msvc",  # aarch64-pc-windows-msvc
         ],
@@ -106,7 +69,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@crates_vendor_manifests__windows_x86_64_msvc-0.42.0//:windows_x86_64_msvc",  # x86_64-pc-windows-msvc
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_aarch64_gnullvm-0.42.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_aarch64_gnullvm-0.42.0.bazel
index 122540a..13e1efb 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_aarch64_gnullvm-0.42.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_aarch64_gnullvm-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_aarch64_gnullvm",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__windows_aarch64_gnullvm-0.42.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_manifests__windows_aarch64_gnullvm-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_aarch64_gnullvm_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_aarch64_gnullvm_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_aarch64_msvc-0.42.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_aarch64_msvc-0.42.0.bazel
index 9109efc..36d1a6f 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_aarch64_msvc-0.42.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_aarch64_msvc-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_aarch64_msvc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__windows_aarch64_msvc-0.42.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_manifests__windows_aarch64_msvc-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_aarch64_msvc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_aarch64_msvc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_i686_gnu-0.42.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_i686_gnu-0.42.0.bazel
index 4a33158..5c530b9 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_i686_gnu-0.42.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_i686_gnu-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_i686_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__windows_i686_gnu-0.42.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_manifests__windows_i686_gnu-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_i686_gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_i686_gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_i686_msvc-0.42.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_i686_msvc-0.42.0.bazel
index 1d0f7ba..bfbe3d2 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_i686_msvc-0.42.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_i686_msvc-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_i686_msvc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__windows_i686_msvc-0.42.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_manifests__windows_i686_msvc-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_i686_msvc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_i686_msvc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_x86_64_gnu-0.42.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_x86_64_gnu-0.42.0.bazel
index a6570c5..54e3fbf 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_x86_64_gnu-0.42.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_x86_64_gnu-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_x86_64_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__windows_x86_64_gnu-0.42.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_manifests__windows_x86_64_gnu-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_x86_64_gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_x86_64_gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_x86_64_gnullvm-0.42.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_x86_64_gnullvm-0.42.0.bazel
index d9a4148..da92630 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_x86_64_gnullvm-0.42.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_x86_64_gnullvm-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_x86_64_gnullvm",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__windows_x86_64_gnullvm-0.42.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_manifests__windows_x86_64_gnullvm-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_x86_64_gnullvm_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_x86_64_gnullvm_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_x86_64_msvc-0.42.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_x86_64_msvc-0.42.0.bazel
index d806980..8ab23fd 100644
--- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_x86_64_msvc-0.42.0.bazel
+++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.windows_x86_64_msvc-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_manifests:crates_vendor_manifests
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_x86_64_msvc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_manifests__windows_x86_64_msvc-0.42.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_manifests__windows_x86_64_msvc-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_x86_64_msvc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_x86_64_msvc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.async-trait-0.1.60.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.async-trait-0.1.60.bazel
index aab1ca4..68f17e2 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.async-trait-0.1.60.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.async-trait-0.1.60.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -26,56 +20,20 @@
 
 rust_proc_macro(
     name = "async_trait",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,70 +42,30 @@
     ],
     version = "0.1.60",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__async-trait-0.1.60//:build_script_build",
-            "@crates_vendor_pkgs__proc-macro2-1.0.49//:proc_macro2",
-            "@crates_vendor_pkgs__quote-1.0.23//:quote",
-            "@crates_vendor_pkgs__syn-1.0.107//:syn",
-        ],
-    }),
+        "@crates_vendor_pkgs__async-trait-0.1.60//:build_script_build",
+        "@crates_vendor_pkgs__proc-macro2-1.0.49//:proc_macro2",
+        "@crates_vendor_pkgs__quote-1.0.23//:quote",
+        "@crates_vendor_pkgs__syn-1.0.107//:syn",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "async-trait_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,28 +74,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.1.60",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "async-trait_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.autocfg-1.1.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.autocfg-1.1.0.bazel
index 88ede6f..c5ed298 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.autocfg-1.1.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.autocfg-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "autocfg",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.axum-0.4.8.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.axum-0.4.8.bazel
index ce22a6e..a7cfb6d 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.axum-0.4.8.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.axum-0.4.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,17 +19,7 @@
 
 rust_library(
     name = "axum",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = [
             "**",
@@ -39,15 +27,12 @@
         ],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "http1",
@@ -56,30 +41,11 @@
         "tower-log",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__async-trait-0.1.60//:async_trait",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@crates_vendor_pkgs__async-trait-0.1.60//:async_trait",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -88,29 +54,26 @@
     ],
     version = "0.4.8",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__axum-core-0.1.2//:axum_core",
-            "@crates_vendor_pkgs__bitflags-1.3.2//:bitflags",
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
-            "@crates_vendor_pkgs__futures-util-0.3.25//:futures_util",
-            "@crates_vendor_pkgs__http-0.2.8//:http",
-            "@crates_vendor_pkgs__http-body-0.4.5//:http_body",
-            "@crates_vendor_pkgs__hyper-0.14.23//:hyper",
-            "@crates_vendor_pkgs__matchit-0.4.6//:matchit",
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",
-            "@crates_vendor_pkgs__mime-0.3.16//:mime",
-            "@crates_vendor_pkgs__percent-encoding-2.2.0//:percent_encoding",
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
-            "@crates_vendor_pkgs__serde-1.0.152//:serde",
-            "@crates_vendor_pkgs__serde_json-1.0.91//:serde_json",
-            "@crates_vendor_pkgs__serde_urlencoded-0.7.1//:serde_urlencoded",
-            "@crates_vendor_pkgs__sync_wrapper-0.1.1//:sync_wrapper",
-            "@crates_vendor_pkgs__tokio-1.16.1//:tokio",
-            "@crates_vendor_pkgs__tower-0.4.13//:tower",
-            "@crates_vendor_pkgs__tower-http-0.2.5//:tower_http",
-            "@crates_vendor_pkgs__tower-layer-0.3.2//:tower_layer",
-            "@crates_vendor_pkgs__tower-service-0.3.2//:tower_service",
-        ],
-    }),
+        "@crates_vendor_pkgs__axum-core-0.1.2//:axum_core",
+        "@crates_vendor_pkgs__bitflags-1.3.2//:bitflags",
+        "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
+        "@crates_vendor_pkgs__futures-util-0.3.25//:futures_util",
+        "@crates_vendor_pkgs__http-0.2.8//:http",
+        "@crates_vendor_pkgs__http-body-0.4.5//:http_body",
+        "@crates_vendor_pkgs__hyper-0.14.23//:hyper",
+        "@crates_vendor_pkgs__matchit-0.4.6//:matchit",
+        "@crates_vendor_pkgs__memchr-2.5.0//:memchr",
+        "@crates_vendor_pkgs__mime-0.3.16//:mime",
+        "@crates_vendor_pkgs__percent-encoding-2.2.0//:percent_encoding",
+        "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
+        "@crates_vendor_pkgs__serde-1.0.152//:serde",
+        "@crates_vendor_pkgs__serde_json-1.0.91//:serde_json",
+        "@crates_vendor_pkgs__serde_urlencoded-0.7.1//:serde_urlencoded",
+        "@crates_vendor_pkgs__sync_wrapper-0.1.1//:sync_wrapper",
+        "@crates_vendor_pkgs__tokio-1.16.1//:tokio",
+        "@crates_vendor_pkgs__tower-0.4.13//:tower",
+        "@crates_vendor_pkgs__tower-http-0.2.5//:tower_http",
+        "@crates_vendor_pkgs__tower-layer-0.3.2//:tower_layer",
+        "@crates_vendor_pkgs__tower-service-0.3.2//:tower_service",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.axum-core-0.1.2.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.axum-core-0.1.2.bazel
index 889d3fe..c9e62bc 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.axum-core-0.1.2.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.axum-core-0.1.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,23 @@
 
 rust_library(
     name = "axum_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__async-trait-0.1.60//:async_trait",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@crates_vendor_pkgs__async-trait-0.1.60//:async_trait",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,13 +44,10 @@
     ],
     version = "0.1.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
-            "@crates_vendor_pkgs__futures-util-0.3.25//:futures_util",
-            "@crates_vendor_pkgs__http-0.2.8//:http",
-            "@crates_vendor_pkgs__http-body-0.4.5//:http_body",
-            "@crates_vendor_pkgs__mime-0.3.16//:mime",
-        ],
-    }),
+        "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
+        "@crates_vendor_pkgs__futures-util-0.3.25//:futures_util",
+        "@crates_vendor_pkgs__http-0.2.8//:http",
+        "@crates_vendor_pkgs__http-body-0.4.5//:http_body",
+        "@crates_vendor_pkgs__mime-0.3.16//:mime",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.bazel
index de4fe9d..fb6c1db 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.bazel
@@ -13,21 +13,15 @@
         "cargo-bazel.json",
         "crates.bzl",
         "defs.bzl",
-    ] + glob(
-        include = ["*.bazel"],
-        exclude = [],
-    ),
+    ] + glob(["*.bazel"]),
 )
 
 filegroup(
     name = "srcs",
-    srcs = glob(
-        include = [
-            "*.bazel",
-            "*.bzl",
-        ],
-        exclude = [],
-    ),
+    srcs = glob([
+        "*.bazel",
+        "*.bzl",
+    ]),
 )
 
 # Workspace Member Dependencies
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.bitflags-1.3.2.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.bitflags-1.3.2.bazel
index d253817..fbf508b 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.bitflags-1.3.2.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.bitflags-1.3.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "bitflags",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "1.3.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.bytes-1.3.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.bytes-1.3.0.bazel
index c914b5d..90c2094 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.bytes-1.3.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.bytes-1.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "bytes",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "1.3.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.cfg-if-1.0.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.cfg-if-1.0.0.bazel
index 0c73c59..643e153 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.cfg-if-1.0.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.cfg-if-1.0.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cfg_if",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.fnv-1.0.7.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.fnv-1.0.7.bazel
index 2fc3ff0..0e25c06 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.fnv-1.0.7.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.fnv-1.0.7.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "fnv",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "1.0.7",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.form_urlencoded-1.1.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.form_urlencoded-1.1.0.bazel
index 6c4fe58..90762a2 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.form_urlencoded-1.1.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.form_urlencoded-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "form_urlencoded",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "1.1.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__percent-encoding-2.2.0//:percent_encoding",
-        ],
-    }),
+        "@crates_vendor_pkgs__percent-encoding-2.2.0//:percent_encoding",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-channel-0.3.25.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-channel-0.3.25.bazel
index 55072d8..e0fc248 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-channel-0.3.25.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-channel-0.3.25.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "futures_channel",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,34 +47,14 @@
     ],
     version = "0.3.25",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__futures-channel-0.3.25//:build_script_build",
-            "@crates_vendor_pkgs__futures-core-0.3.25//:futures_core",
-        ],
-    }),
+        "@crates_vendor_pkgs__futures-channel-0.3.25//:build_script_build",
+        "@crates_vendor_pkgs__futures-core-0.3.25//:futures_core",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "futures-channel_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "alloc",
         "default",
@@ -126,32 +66,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -160,28 +82,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.25",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "futures-channel_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-core-0.3.25.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-core-0.3.25.bazel
index 69e8849..de44053 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-core-0.3.25.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-core-0.3.25.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "futures_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,33 +47,13 @@
     ],
     version = "0.3.25",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__futures-core-0.3.25//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_pkgs__futures-core-0.3.25//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "futures-core_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "alloc",
         "default",
@@ -125,32 +65,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -159,28 +81,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.25",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "futures-core_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-sink-0.3.25.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-sink-0.3.25.bazel
index 8b6dbb7..e82e488 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-sink-0.3.25.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-sink-0.3.25.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "futures_sink",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,4 @@
         "norustfmt",
     ],
     version = "0.3.25",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-task-0.3.25.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-task-0.3.25.bazel
index 49fcf30..5950561 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-task-0.3.25.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-task-0.3.25.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "futures_task",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "alloc",
-    ],
+    ),
+    crate_features = ["alloc"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,68 +43,28 @@
     ],
     version = "0.3.25",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__futures-task-0.3.25//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_pkgs__futures-task-0.3.25//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "futures-task_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "alloc",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["alloc"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -155,28 +73,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.25",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "futures-task_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-util-0.3.25.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-util-0.3.25.bazel
index c5d19b9..7e8a1ec 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-util-0.3.25.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.futures-util-0.3.25.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "futures_util",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "alloc",
-    ],
+    ),
+    crate_features = ["alloc"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,72 +43,32 @@
     ],
     version = "0.3.25",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__futures-core-0.3.25//:futures_core",
-            "@crates_vendor_pkgs__futures-task-0.3.25//:futures_task",
-            "@crates_vendor_pkgs__futures-util-0.3.25//:build_script_build",
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
-            "@crates_vendor_pkgs__pin-utils-0.1.0//:pin_utils",
-        ],
-    }),
+        "@crates_vendor_pkgs__futures-core-0.3.25//:futures_core",
+        "@crates_vendor_pkgs__futures-task-0.3.25//:futures_task",
+        "@crates_vendor_pkgs__futures-util-0.3.25//:build_script_build",
+        "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
+        "@crates_vendor_pkgs__pin-utils-0.1.0//:pin_utils",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "futures-util_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "alloc",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["alloc"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -159,28 +77,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.25",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "futures-util_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.h2-0.3.15.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.h2-0.3.15.bazel
index 9ea40ec..f7a0013 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.h2-0.3.15.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.h2-0.3.15.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "h2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,19 +41,16 @@
     ],
     version = "0.3.15",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
-            "@crates_vendor_pkgs__fnv-1.0.7//:fnv",
-            "@crates_vendor_pkgs__futures-core-0.3.25//:futures_core",
-            "@crates_vendor_pkgs__futures-sink-0.3.25//:futures_sink",
-            "@crates_vendor_pkgs__futures-util-0.3.25//:futures_util",
-            "@crates_vendor_pkgs__http-0.2.8//:http",
-            "@crates_vendor_pkgs__indexmap-1.9.2//:indexmap",
-            "@crates_vendor_pkgs__slab-0.4.7//:slab",
-            "@crates_vendor_pkgs__tokio-1.16.1//:tokio",
-            "@crates_vendor_pkgs__tokio-util-0.7.2//:tokio_util",
-            "@crates_vendor_pkgs__tracing-0.1.37//:tracing",
-        ],
-    }),
+        "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
+        "@crates_vendor_pkgs__fnv-1.0.7//:fnv",
+        "@crates_vendor_pkgs__futures-core-0.3.25//:futures_core",
+        "@crates_vendor_pkgs__futures-sink-0.3.25//:futures_sink",
+        "@crates_vendor_pkgs__futures-util-0.3.25//:futures_util",
+        "@crates_vendor_pkgs__http-0.2.8//:http",
+        "@crates_vendor_pkgs__indexmap-1.9.2//:indexmap",
+        "@crates_vendor_pkgs__slab-0.4.7//:slab",
+        "@crates_vendor_pkgs__tokio-1.16.1//:tokio",
+        "@crates_vendor_pkgs__tokio-util-0.7.2//:tokio_util",
+        "@crates_vendor_pkgs__tracing-0.1.37//:tracing",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.hashbrown-0.12.3.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.hashbrown-0.12.3.bazel
index 63a1690..9eeb876 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.hashbrown-0.12.3.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.hashbrown-0.12.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hashbrown",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "raw",
-    ],
+    ),
+    crate_features = ["raw"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.12.3",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.hermit-abi-0.2.6.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.hermit-abi-0.2.6.bazel
index 094b667..cad7b53 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.hermit-abi-0.2.6.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.hermit-abi-0.2.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hermit_abi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.2.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__libc-0.2.139//:libc",
-        ],
-    }),
+        "@crates_vendor_pkgs__libc-0.2.139//:libc",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.http-0.2.8.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.http-0.2.8.bazel
index b1ac846..416e70b 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.http-0.2.8.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.http-0.2.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "http",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.2.8",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
-            "@crates_vendor_pkgs__fnv-1.0.7//:fnv",
-            "@crates_vendor_pkgs__itoa-1.0.5//:itoa",
-        ],
-    }),
+        "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
+        "@crates_vendor_pkgs__fnv-1.0.7//:fnv",
+        "@crates_vendor_pkgs__itoa-1.0.5//:itoa",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.http-body-0.4.5.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.http-body-0.4.5.bazel
index b90de85..f9f5053 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.http-body-0.4.5.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.http-body-0.4.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "http_body",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.4.5",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
-            "@crates_vendor_pkgs__http-0.2.8//:http",
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
-        ],
-    }),
+        "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
+        "@crates_vendor_pkgs__http-0.2.8//:http",
+        "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.http-range-header-0.3.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.http-range-header-0.3.0.bazel
index fb0adec..3d9dc01 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.http-range-header-0.3.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.http-range-header-0.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "http_range_header",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.httparse-1.8.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.httparse-1.8.0.bazel
index 1502385..e7d95b5 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.httparse-1.8.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.httparse-1.8.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "httparse",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "1.8.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__httparse-1.8.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_pkgs__httparse-1.8.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "httparse_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.8.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "httparse_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.httpdate-1.0.2.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.httpdate-1.0.2.bazel
index 2796a9d7..552c317 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.httpdate-1.0.2.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.httpdate-1.0.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "httpdate",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.hyper-0.14.23.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.hyper-0.14.23.bazel
index b8ae9a9..973fcc6 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.hyper-0.14.23.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.hyper-0.14.23.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "hyper",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "client",
         "default",
@@ -59,29 +44,8 @@
         "tcp",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -90,24 +54,21 @@
     ],
     version = "0.14.23",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
-            "@crates_vendor_pkgs__futures-channel-0.3.25//:futures_channel",
-            "@crates_vendor_pkgs__futures-core-0.3.25//:futures_core",
-            "@crates_vendor_pkgs__futures-util-0.3.25//:futures_util",
-            "@crates_vendor_pkgs__h2-0.3.15//:h2",
-            "@crates_vendor_pkgs__http-0.2.8//:http",
-            "@crates_vendor_pkgs__http-body-0.4.5//:http_body",
-            "@crates_vendor_pkgs__httparse-1.8.0//:httparse",
-            "@crates_vendor_pkgs__httpdate-1.0.2//:httpdate",
-            "@crates_vendor_pkgs__itoa-1.0.5//:itoa",
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
-            "@crates_vendor_pkgs__socket2-0.4.7//:socket2",
-            "@crates_vendor_pkgs__tokio-1.16.1//:tokio",
-            "@crates_vendor_pkgs__tower-service-0.3.2//:tower_service",
-            "@crates_vendor_pkgs__tracing-0.1.37//:tracing",
-            "@crates_vendor_pkgs__want-0.3.0//:want",
-        ],
-    }),
+        "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
+        "@crates_vendor_pkgs__futures-channel-0.3.25//:futures_channel",
+        "@crates_vendor_pkgs__futures-core-0.3.25//:futures_core",
+        "@crates_vendor_pkgs__futures-util-0.3.25//:futures_util",
+        "@crates_vendor_pkgs__h2-0.3.15//:h2",
+        "@crates_vendor_pkgs__http-0.2.8//:http",
+        "@crates_vendor_pkgs__http-body-0.4.5//:http_body",
+        "@crates_vendor_pkgs__httparse-1.8.0//:httparse",
+        "@crates_vendor_pkgs__httpdate-1.0.2//:httpdate",
+        "@crates_vendor_pkgs__itoa-1.0.5//:itoa",
+        "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
+        "@crates_vendor_pkgs__socket2-0.4.7//:socket2",
+        "@crates_vendor_pkgs__tokio-1.16.1//:tokio",
+        "@crates_vendor_pkgs__tower-service-0.3.2//:tower_service",
+        "@crates_vendor_pkgs__tracing-0.1.37//:tracing",
+        "@crates_vendor_pkgs__want-0.3.0//:want",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.indexmap-1.9.2.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.indexmap-1.9.2.bazel
index eb75120..860eda3 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.indexmap-1.9.2.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.indexmap-1.9.2.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "indexmap",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,69 +43,29 @@
     ],
     version = "1.9.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__hashbrown-0.12.3//:hashbrown",
-            "@crates_vendor_pkgs__indexmap-1.9.2//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_pkgs__hashbrown-0.12.3//:hashbrown",
+        "@crates_vendor_pkgs__indexmap-1.9.2//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "indexmap_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["std"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,29 +74,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.9.2",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@crates_vendor_pkgs__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "indexmap_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.instant-0.1.12.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.instant-0.1.12.bazel
index 071201b..d7f9c80 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.instant-0.1.12.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.instant-0.1.12.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "instant",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.1.12",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",
-        ],
-    }),
+        "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.itoa-1.0.5.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.itoa-1.0.5.bazel
index f61cf38..66c9a6d 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.itoa-1.0.5.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.itoa-1.0.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "itoa",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.5",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.lazy_static-1.4.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.lazy_static-1.4.0.bazel
index 8e751ea..10944dd 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.lazy_static-1.4.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.lazy_static-1.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "lazy_static",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.4.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.libc-0.2.139.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.libc-0.2.139.bazel
index 0ac2d28..49e0afd 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.libc-0.2.139.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.libc-0.2.139.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "libc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "0.2.139",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__libc-0.2.139//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_pkgs__libc-0.2.139//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "libc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.139",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "libc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.lock_api-0.4.9.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.lock_api-0.4.9.bazel
index a2d0e61..8bba14c 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.lock_api-0.4.9.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.lock_api-0.4.9.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "lock_api",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.4.9",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__lock_api-0.4.9//:build_script_build",
-            "@crates_vendor_pkgs__scopeguard-1.1.0//:scopeguard",
-        ],
-    }),
+        "@crates_vendor_pkgs__lock_api-0.4.9//:build_script_build",
+        "@crates_vendor_pkgs__scopeguard-1.1.0//:scopeguard",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "lock_api_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,29 +72,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.9",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@crates_vendor_pkgs__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "lock_api_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.log-0.4.17.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.log-0.4.17.bazel
index 16f8c0b..4026075 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.log-0.4.17.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.log-0.4.17.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "log",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,69 +43,29 @@
     ],
     version = "0.4.17",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",
-            "@crates_vendor_pkgs__log-0.4.17//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",
+        "@crates_vendor_pkgs__log-0.4.17//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "log_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["std"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,28 +74,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.17",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "log_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.matchit-0.4.6.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.matchit-0.4.6.bazel
index 0230aa5..b5486d0 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.matchit-0.4.6.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.matchit-0.4.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "matchit",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.4.6",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.memchr-2.5.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.memchr-2.5.0.bazel
index 0a5b3bf..a5ce544 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.memchr-2.5.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.memchr-2.5.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "memchr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "2.5.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__memchr-2.5.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_pkgs__memchr-2.5.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "memchr_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "2.5.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "memchr_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.mime-0.3.16.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.mime-0.3.16.bazel
index 04cad9c..854869f 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.mime-0.3.16.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.mime-0.3.16.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "mime",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.16",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.mio-0.7.14.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.mio-0.7.14.bazel
index fd91e3d..3e78394 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.mio-0.7.14.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.mio-0.7.14.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "mio",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "net",
@@ -56,29 +41,8 @@
         "uds",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,103 +51,80 @@
     ],
     version = "0.7.14",
     deps = [
+        "@crates_vendor_pkgs__log-0.4.17//:log",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
             "@crates_vendor_pkgs__miow-0.3.7//:miow",  # cfg(windows)
             "@crates_vendor_pkgs__ntapi-0.3.7//:ntapi",  # cfg(windows)
             "@crates_vendor_pkgs__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
             "@crates_vendor_pkgs__miow-0.3.7//:miow",  # cfg(windows)
             "@crates_vendor_pkgs__ntapi-0.3.7//:ntapi",  # cfg(windows)
             "@crates_vendor_pkgs__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
             "@crates_vendor_pkgs__miow-0.3.7//:miow",  # cfg(windows)
             "@crates_vendor_pkgs__ntapi-0.3.7//:ntapi",  # cfg(windows)
             "@crates_vendor_pkgs__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__log-0.4.17//:log",  # common dependency
         ],
-        "//conditions:default": [
-            "@crates_vendor_pkgs__log-0.4.17//:log",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.miow-0.3.7.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.miow-0.3.7.bazel
index 15254ca..0340365 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.miow-0.3.7.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.miow-0.3.7.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "miow",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.3.7",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__winapi-0.3.9//:winapi",
-        ],
-    }),
+        "@crates_vendor_pkgs__winapi-0.3.9//:winapi",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.ntapi-0.3.7.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.ntapi-0.3.7.bazel
index ff46bd1..7bcf164 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.ntapi-0.3.7.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.ntapi-0.3.7.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "ntapi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "user",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "0.3.7",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__ntapi-0.3.7//:build_script_build",
-            "@crates_vendor_pkgs__winapi-0.3.9//:winapi",
-        ],
-    }),
+        "@crates_vendor_pkgs__ntapi-0.3.7//:build_script_build",
+        "@crates_vendor_pkgs__winapi-0.3.9//:winapi",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "ntapi_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "user",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.7",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "ntapi_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.nu-ansi-term-0.46.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.nu-ansi-term-0.46.0.bazel
index 3322a90..c81d895 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.nu-ansi-term-0.46.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.nu-ansi-term-0.46.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "nu_ansi_term",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,21 +41,17 @@
     ],
     version = "0.46.0",
     deps = [
+        "@crates_vendor_pkgs__overload-0.1.1//:overload",
     ] + select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@crates_vendor_pkgs__overload-0.1.1//:overload",  # common dependency
             "@crates_vendor_pkgs__winapi-0.3.9//:winapi",  # cfg(target_os = "windows")
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@crates_vendor_pkgs__overload-0.1.1//:overload",  # common dependency
             "@crates_vendor_pkgs__winapi-0.3.9//:winapi",  # cfg(target_os = "windows")
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@crates_vendor_pkgs__overload-0.1.1//:overload",  # common dependency
             "@crates_vendor_pkgs__winapi-0.3.9//:winapi",  # cfg(target_os = "windows")
         ],
-        "//conditions:default": [
-            "@crates_vendor_pkgs__overload-0.1.1//:overload",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.num_cpus-1.15.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.num_cpus-1.15.0.bazel
index 87c386d..1c4631d 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.num_cpus-1.15.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.num_cpus-1.15.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "num_cpus",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "1.15.0",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
@@ -149,7 +110,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.once_cell-1.17.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.once_cell-1.17.0.bazel
index 91256b2..0a2f468 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.once_cell-1.17.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.once_cell-1.17.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "once_cell",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
@@ -52,29 +37,8 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,4 @@
         "norustfmt",
     ],
     version = "1.17.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.overload-0.1.1.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.overload-0.1.1.bazel
index b5bd0ef..89a89e4 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.overload-0.1.1.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.overload-0.1.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "overload",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.parking_lot-0.11.2.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.parking_lot-0.11.2.bazel
index 0ada5fc..b06ee1d 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.parking_lot-0.11.2.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.parking_lot-0.11.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "parking_lot",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,11 +42,8 @@
     ],
     version = "0.11.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",
-            "@crates_vendor_pkgs__lock_api-0.4.9//:lock_api",
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:parking_lot_core",
-        ],
-    }),
+        "@crates_vendor_pkgs__instant-0.1.12//:instant",
+        "@crates_vendor_pkgs__lock_api-0.4.9//:lock_api",
+        "@crates_vendor_pkgs__parking_lot_core-0.8.6//:parking_lot_core",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.parking_lot_core-0.8.6.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.parking_lot_core-0.8.6.bazel
index 53a53ed..60ac4f9 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.parking_lot_core-0.8.6.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.parking_lot_core-0.8.6.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "parking_lot_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,224 +42,98 @@
     ],
     version = "0.8.6",
     deps = [
+        "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",
+        "@crates_vendor_pkgs__instant-0.1.12//:instant",
+        "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",
+        "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
             "@crates_vendor_pkgs__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
             "@crates_vendor_pkgs__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
             "@crates_vendor_pkgs__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",  # common dependency
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",  # common dependency
         ],
-        "//conditions:default": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",
-            "@crates_vendor_pkgs__instant-0.1.12//:instant",
-            "@crates_vendor_pkgs__parking_lot_core-0.8.6//:build_script_build",
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",
-        ],
+        "//conditions:default": [],
     }),
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "parking_lot_core_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -310,28 +142,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.8.6",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "parking_lot_core_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.percent-encoding-2.2.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.percent-encoding-2.2.0.bazel
index 2d4fbf1..8d37d88 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.percent-encoding-2.2.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.percent-encoding-2.2.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "percent_encoding",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "2.2.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-project-1.0.12.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-project-1.0.12.bazel
index 6fab12b..4798292 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-project-1.0.12.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-project-1.0.12.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,23 @@
 
 rust_library(
     name = "pin_project",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__pin-project-internal-1.0.12//:pin_project_internal",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@crates_vendor_pkgs__pin-project-internal-1.0.12//:pin_project_internal",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +43,4 @@
         "norustfmt",
     ],
     version = "1.0.12",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-project-internal-1.0.12.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-project-internal-1.0.12.bazel
index 7c92017..d38a99e 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-project-internal-1.0.12.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-project-internal-1.0.12.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,56 +19,20 @@
 
 rust_proc_macro(
     name = "pin_project_internal",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "1.0.12",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__proc-macro2-1.0.49//:proc_macro2",
-            "@crates_vendor_pkgs__quote-1.0.23//:quote",
-            "@crates_vendor_pkgs__syn-1.0.107//:syn",
-        ],
-    }),
+        "@crates_vendor_pkgs__proc-macro2-1.0.49//:proc_macro2",
+        "@crates_vendor_pkgs__quote-1.0.23//:quote",
+        "@crates_vendor_pkgs__syn-1.0.107//:syn",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-project-lite-0.2.9.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-project-lite-0.2.9.bazel
index 589a972..34adfb3 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-project-lite-0.2.9.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-project-lite-0.2.9.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "pin_project_lite",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.2.9",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-utils-0.1.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-utils-0.1.0.bazel
index c53f34c..f3e2e34 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-utils-0.1.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.pin-utils-0.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "pin_utils",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.proc-macro2-1.0.49.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.proc-macro2-1.0.49.bazel
index a5b6446..028309d 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.proc-macro2-1.0.49.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.proc-macro2-1.0.49.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "proc_macro2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "1.0.49",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__proc-macro2-1.0.49//:build_script_build",
-            "@crates_vendor_pkgs__unicode-ident-1.0.6//:unicode_ident",
-        ],
-    }),
+        "@crates_vendor_pkgs__proc-macro2-1.0.49//:build_script_build",
+        "@crates_vendor_pkgs__unicode-ident-1.0.6//:unicode_ident",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "proc-macro2_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.49",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "proc-macro2_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.quote-1.0.23.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.quote-1.0.23.bazel
index 3d5fdb7..181e20c 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.quote-1.0.23.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.quote-1.0.23.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "quote",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "1.0.23",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__proc-macro2-1.0.49//:proc_macro2",
-            "@crates_vendor_pkgs__quote-1.0.23//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_pkgs__proc-macro2-1.0.49//:proc_macro2",
+        "@crates_vendor_pkgs__quote-1.0.23//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "quote_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.23",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "quote_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.redox_syscall-0.2.16.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.redox_syscall-0.2.16.bazel
index 8fd1f16..37e64f1 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.redox_syscall-0.2.16.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.redox_syscall-0.2.16.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "syscall",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.2.16",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__bitflags-1.3.2//:bitflags",
-        ],
-    }),
+        "@crates_vendor_pkgs__bitflags-1.3.2//:bitflags",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.ryu-1.0.12.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.ryu-1.0.12.bazel
index 247711d..cb00d54 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.ryu-1.0.12.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.ryu-1.0.12.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "ryu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.12",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.scopeguard-1.1.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.scopeguard-1.1.0.bazel
index 26626d3..c5bd1ec 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.scopeguard-1.1.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.scopeguard-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "scopeguard",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.serde-1.0.152.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.serde-1.0.152.bazel
index 616199b..2e88e88 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.serde-1.0.152.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.serde-1.0.152.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "serde",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "1.0.152",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__serde-1.0.152//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_pkgs__serde-1.0.152//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "serde_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.152",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "serde_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.serde_json-1.0.91.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.serde_json-1.0.91.bazel
index 126e6eb..d1ca76b 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.serde_json-1.0.91.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.serde_json-1.0.91.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "serde_json",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "raw_value",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,36 +47,16 @@
     ],
     version = "1.0.91",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__itoa-1.0.5//:itoa",
-            "@crates_vendor_pkgs__ryu-1.0.12//:ryu",
-            "@crates_vendor_pkgs__serde-1.0.152//:serde",
-            "@crates_vendor_pkgs__serde_json-1.0.91//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_pkgs__itoa-1.0.5//:itoa",
+        "@crates_vendor_pkgs__ryu-1.0.12//:ryu",
+        "@crates_vendor_pkgs__serde-1.0.152//:serde",
+        "@crates_vendor_pkgs__serde_json-1.0.91//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "serde_json_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "raw_value",
@@ -128,32 +68,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -162,28 +84,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.91",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "serde_json_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.serde_urlencoded-0.7.1.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.serde_urlencoded-0.7.1.bazel
index d89c65c..59afc3c 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.serde_urlencoded-0.7.1.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.serde_urlencoded-0.7.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "serde_urlencoded",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,12 +41,9 @@
     ],
     version = "0.7.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__form_urlencoded-1.1.0//:form_urlencoded",
-            "@crates_vendor_pkgs__itoa-1.0.5//:itoa",
-            "@crates_vendor_pkgs__ryu-1.0.12//:ryu",
-            "@crates_vendor_pkgs__serde-1.0.152//:serde",
-        ],
-    }),
+        "@crates_vendor_pkgs__form_urlencoded-1.1.0//:form_urlencoded",
+        "@crates_vendor_pkgs__itoa-1.0.5//:itoa",
+        "@crates_vendor_pkgs__ryu-1.0.12//:ryu",
+        "@crates_vendor_pkgs__serde-1.0.152//:serde",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.sharded-slab-0.1.4.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.sharded-slab-0.1.4.bazel
index 6e5472e..f59e64e 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.sharded-slab-0.1.4.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.sharded-slab-0.1.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "sharded_slab",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.1.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__lazy_static-1.4.0//:lazy_static",
-        ],
-    }),
+        "@crates_vendor_pkgs__lazy_static-1.4.0//:lazy_static",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.signal-hook-registry-1.4.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.signal-hook-registry-1.4.0.bazel
index d1fff12..52820c4 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.signal-hook-registry-1.4.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.signal-hook-registry-1.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "signal_hook_registry",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "1.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__libc-0.2.139//:libc",
-        ],
-    }),
+        "@crates_vendor_pkgs__libc-0.2.139//:libc",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.slab-0.4.7.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.slab-0.4.7.bazel
index 98f87e8..eb917c5 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.slab-0.4.7.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.slab-0.4.7.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "slab",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "0.4.7",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__slab-0.4.7//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_pkgs__slab-0.4.7//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "slab_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,29 +79,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.7",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@crates_vendor_pkgs__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "slab_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.smallvec-1.10.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.smallvec-1.10.0.bazel
index 32bb8a4..88b78f0 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.smallvec-1.10.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.smallvec-1.10.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "smallvec",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.10.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.socket2-0.4.7.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.socket2-0.4.7.bazel
index 768aa22..a1bb413 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.socket2-0.4.7.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.socket2-0.4.7.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "socket2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "all",
-    ],
+    ),
+    crate_features = ["all"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,8 +41,7 @@
         "norustfmt",
     ],
     version = "0.4.7",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
         ],
@@ -147,7 +108,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.syn-1.0.107.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.syn-1.0.107.bazel
index 610c85c..66d4287 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.syn-1.0.107.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.syn-1.0.107.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "syn",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "clone-impls",
         "default",
@@ -64,29 +45,8 @@
         "visit-mut",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -95,36 +55,16 @@
     ],
     version = "1.0.107",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__proc-macro2-1.0.49//:proc_macro2",
-            "@crates_vendor_pkgs__quote-1.0.23//:quote",
-            "@crates_vendor_pkgs__syn-1.0.107//:build_script_build",
-            "@crates_vendor_pkgs__unicode-ident-1.0.6//:unicode_ident",
-        ],
-    }),
+        "@crates_vendor_pkgs__proc-macro2-1.0.49//:proc_macro2",
+        "@crates_vendor_pkgs__quote-1.0.23//:quote",
+        "@crates_vendor_pkgs__syn-1.0.107//:build_script_build",
+        "@crates_vendor_pkgs__unicode-ident-1.0.6//:unicode_ident",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "syn_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "clone-impls",
         "default",
@@ -144,32 +84,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -178,28 +100,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.107",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "syn_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.sync_wrapper-0.1.1.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.sync_wrapper-0.1.1.bazel
index 4675722..586a44c 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.sync_wrapper-0.1.1.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.sync_wrapper-0.1.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "sync_wrapper",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.thread_local-1.1.4.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.thread_local-1.1.4.bazel
index af9df37..668cf2a 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.thread_local-1.1.4.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.thread_local-1.1.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "thread_local",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "1.1.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",
-        ],
-    }),
+        "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tokio-1.16.1.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tokio-1.16.1.bazel
index 9b8980e..9bef970 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tokio-1.16.1.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tokio-1.16.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "tokio",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "bytes",
         "default",
@@ -71,30 +56,11 @@
         "winapi",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__tokio-macros-1.8.2//:tokio_macros",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@crates_vendor_pkgs__tokio-macros-1.8.2//:tokio_macros",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -103,254 +69,99 @@
     ],
     version = "1.16.1",
     deps = [
+        "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
+        "@crates_vendor_pkgs__memchr-2.5.0//:memchr",
+        "@crates_vendor_pkgs__mio-0.7.14//:mio",
+        "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",
+        "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",
+        "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",
+        "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",  # common dependency
             "@crates_vendor_pkgs__libc-0.2.139//:libc",  # cfg(unix)
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",  # common dependency
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",  # common dependency
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",  # common dependency
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",  # common dependency
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",  # common dependency
             "@crates_vendor_pkgs__signal-hook-registry-1.4.0//:signal_hook_registry",  # cfg(unix)
         ],
-        "//conditions:default": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
-            "@crates_vendor_pkgs__memchr-2.5.0//:memchr",
-            "@crates_vendor_pkgs__mio-0.7.14//:mio",
-            "@crates_vendor_pkgs__num_cpus-1.15.0//:num_cpus",
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",
-            "@crates_vendor_pkgs__parking_lot-0.11.2//:parking_lot",
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tokio-macros-1.8.2.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tokio-macros-1.8.2.bazel
index 2aefaf4..08df3ed 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tokio-macros-1.8.2.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tokio-macros-1.8.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,56 +19,20 @@
 
 rust_proc_macro(
     name = "tokio_macros",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "1.8.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__proc-macro2-1.0.49//:proc_macro2",
-            "@crates_vendor_pkgs__quote-1.0.23//:quote",
-            "@crates_vendor_pkgs__syn-1.0.107//:syn",
-        ],
-    }),
+        "@crates_vendor_pkgs__proc-macro2-1.0.49//:proc_macro2",
+        "@crates_vendor_pkgs__quote-1.0.23//:quote",
+        "@crates_vendor_pkgs__syn-1.0.107//:syn",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tokio-util-0.7.2.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tokio-util-0.7.2.bazel
index 7c7657a..599c396 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tokio-util-0.7.2.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tokio-util-0.7.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "tokio_util",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "codec",
         "default",
         "tracing",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,14 +46,11 @@
     ],
     version = "0.7.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
-            "@crates_vendor_pkgs__futures-core-0.3.25//:futures_core",
-            "@crates_vendor_pkgs__futures-sink-0.3.25//:futures_sink",
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
-            "@crates_vendor_pkgs__tokio-1.16.1//:tokio",
-            "@crates_vendor_pkgs__tracing-0.1.37//:tracing",
-        ],
-    }),
+        "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
+        "@crates_vendor_pkgs__futures-core-0.3.25//:futures_core",
+        "@crates_vendor_pkgs__futures-sink-0.3.25//:futures_sink",
+        "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
+        "@crates_vendor_pkgs__tokio-1.16.1//:tokio",
+        "@crates_vendor_pkgs__tracing-0.1.37//:tracing",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-0.4.13.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-0.4.13.bazel
index 550c990..c4e409b 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-0.4.13.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-0.4.13.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "tower",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "__common",
         "buffer",
@@ -61,29 +46,8 @@
         "util",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -92,17 +56,14 @@
     ],
     version = "0.4.13",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__futures-core-0.3.25//:futures_core",
-            "@crates_vendor_pkgs__futures-util-0.3.25//:futures_util",
-            "@crates_vendor_pkgs__pin-project-1.0.12//:pin_project",
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
-            "@crates_vendor_pkgs__tokio-1.16.1//:tokio",
-            "@crates_vendor_pkgs__tokio-util-0.7.2//:tokio_util",
-            "@crates_vendor_pkgs__tower-layer-0.3.2//:tower_layer",
-            "@crates_vendor_pkgs__tower-service-0.3.2//:tower_service",
-            "@crates_vendor_pkgs__tracing-0.1.37//:tracing",
-        ],
-    }),
+        "@crates_vendor_pkgs__futures-core-0.3.25//:futures_core",
+        "@crates_vendor_pkgs__futures-util-0.3.25//:futures_util",
+        "@crates_vendor_pkgs__pin-project-1.0.12//:pin_project",
+        "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
+        "@crates_vendor_pkgs__tokio-1.16.1//:tokio",
+        "@crates_vendor_pkgs__tokio-util-0.7.2//:tokio_util",
+        "@crates_vendor_pkgs__tower-layer-0.3.2//:tower_layer",
+        "@crates_vendor_pkgs__tower-service-0.3.2//:tower_service",
+        "@crates_vendor_pkgs__tracing-0.1.37//:tracing",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-http-0.2.5.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-http-0.2.5.bazel
index 25a800c..6525c9c 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-http-0.2.5.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-http-0.2.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "tower_http",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "map-response-body",
@@ -54,29 +39,8 @@
         "util",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,20 +49,17 @@
     ],
     version = "0.2.5",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__bitflags-1.3.2//:bitflags",
-            "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
-            "@crates_vendor_pkgs__futures-core-0.3.25//:futures_core",
-            "@crates_vendor_pkgs__futures-util-0.3.25//:futures_util",
-            "@crates_vendor_pkgs__http-0.2.8//:http",
-            "@crates_vendor_pkgs__http-body-0.4.5//:http_body",
-            "@crates_vendor_pkgs__http-range-header-0.3.0//:http_range_header",
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
-            "@crates_vendor_pkgs__tower-0.4.13//:tower",
-            "@crates_vendor_pkgs__tower-layer-0.3.2//:tower_layer",
-            "@crates_vendor_pkgs__tower-service-0.3.2//:tower_service",
-            "@crates_vendor_pkgs__tracing-0.1.37//:tracing",
-        ],
-    }),
+        "@crates_vendor_pkgs__bitflags-1.3.2//:bitflags",
+        "@crates_vendor_pkgs__bytes-1.3.0//:bytes",
+        "@crates_vendor_pkgs__futures-core-0.3.25//:futures_core",
+        "@crates_vendor_pkgs__futures-util-0.3.25//:futures_util",
+        "@crates_vendor_pkgs__http-0.2.8//:http",
+        "@crates_vendor_pkgs__http-body-0.4.5//:http_body",
+        "@crates_vendor_pkgs__http-range-header-0.3.0//:http_range_header",
+        "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
+        "@crates_vendor_pkgs__tower-0.4.13//:tower",
+        "@crates_vendor_pkgs__tower-layer-0.3.2//:tower_layer",
+        "@crates_vendor_pkgs__tower-service-0.3.2//:tower_service",
+        "@crates_vendor_pkgs__tracing-0.1.37//:tracing",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-layer-0.3.2.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-layer-0.3.2.bazel
index 022f6d0..b245ed0 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-layer-0.3.2.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-layer-0.3.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tower_layer",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-service-0.3.2.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-service-0.3.2.bazel
index add3fab..ee4caf3 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-service-0.3.2.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tower-service-0.3.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tower_service",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-0.1.37.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-0.1.37.bazel
index d8c45a4..77b5c4a 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-0.1.37.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-0.1.37.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "tracing",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "attributes",
         "default",
@@ -53,30 +38,11 @@
         "tracing-attributes",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__tracing-attributes-0.1.23//:tracing_attributes",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@crates_vendor_pkgs__tracing-attributes-0.1.23//:tracing_attributes",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,12 +51,9 @@
     ],
     version = "0.1.37",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",
-            "@crates_vendor_pkgs__log-0.4.17//:log",
-            "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
-            "@crates_vendor_pkgs__tracing-core-0.1.30//:tracing_core",
-        ],
-    }),
+        "@crates_vendor_pkgs__cfg-if-1.0.0//:cfg_if",
+        "@crates_vendor_pkgs__log-0.4.17//:log",
+        "@crates_vendor_pkgs__pin-project-lite-0.2.9//:pin_project_lite",
+        "@crates_vendor_pkgs__tracing-core-0.1.30//:tracing_core",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-attributes-0.1.23.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-attributes-0.1.23.bazel
index 1a9d31a..70a3c60 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-attributes-0.1.23.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-attributes-0.1.23.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,56 +19,20 @@
 
 rust_proc_macro(
     name = "tracing_attributes",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.1.23",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__proc-macro2-1.0.49//:proc_macro2",
-            "@crates_vendor_pkgs__quote-1.0.23//:quote",
-            "@crates_vendor_pkgs__syn-1.0.107//:syn",
-        ],
-    }),
+        "@crates_vendor_pkgs__proc-macro2-1.0.49//:proc_macro2",
+        "@crates_vendor_pkgs__quote-1.0.23//:quote",
+        "@crates_vendor_pkgs__syn-1.0.107//:syn",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-core-0.1.30.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-core-0.1.30.bazel
index d95997e..7f1aa3d 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-core-0.1.30.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-core-0.1.30.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "tracing_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "once_cell",
@@ -52,29 +37,8 @@
         "valuable",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -83,9 +47,6 @@
     ],
     version = "0.1.30",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",
-        ],
-    }),
+        "@crates_vendor_pkgs__once_cell-1.17.0//:once_cell",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-log-0.1.3.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-log-0.1.3.bazel
index 259fa4f..3ba19fe 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-log-0.1.3.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-log-0.1.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "tracing_log",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "log-tracer",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,11 +45,8 @@
     ],
     version = "0.1.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__lazy_static-1.4.0//:lazy_static",
-            "@crates_vendor_pkgs__log-0.4.17//:log",
-            "@crates_vendor_pkgs__tracing-core-0.1.30//:tracing_core",
-        ],
-    }),
+        "@crates_vendor_pkgs__lazy_static-1.4.0//:lazy_static",
+        "@crates_vendor_pkgs__log-0.4.17//:log",
+        "@crates_vendor_pkgs__tracing-core-0.1.30//:tracing_core",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-subscriber-0.3.16.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-subscriber-0.3.16.bazel
index ddfe864..cddda8c 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-subscriber-0.3.16.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.tracing-subscriber-0.3.16.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "tracing_subscriber",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "ansi",
@@ -59,29 +44,8 @@
         "tracing-log",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -90,14 +54,11 @@
     ],
     version = "0.3.16",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__nu-ansi-term-0.46.0//:nu_ansi_term",
-            "@crates_vendor_pkgs__sharded-slab-0.1.4//:sharded_slab",
-            "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",
-            "@crates_vendor_pkgs__thread_local-1.1.4//:thread_local",
-            "@crates_vendor_pkgs__tracing-core-0.1.30//:tracing_core",
-            "@crates_vendor_pkgs__tracing-log-0.1.3//:tracing_log",
-        ],
-    }),
+        "@crates_vendor_pkgs__nu-ansi-term-0.46.0//:nu_ansi_term",
+        "@crates_vendor_pkgs__sharded-slab-0.1.4//:sharded_slab",
+        "@crates_vendor_pkgs__smallvec-1.10.0//:smallvec",
+        "@crates_vendor_pkgs__thread_local-1.1.4//:thread_local",
+        "@crates_vendor_pkgs__tracing-core-0.1.30//:tracing_core",
+        "@crates_vendor_pkgs__tracing-log-0.1.3//:tracing_log",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.try-lock-0.2.3.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.try-lock-0.2.3.bazel
index 5963889..19a7f9f 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.try-lock-0.2.3.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.try-lock-0.2.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "try_lock",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.2.3",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.unicode-ident-1.0.6.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.unicode-ident-1.0.6.bazel
index 805c90a..b6e12bb 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.unicode-ident-1.0.6.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.unicode-ident-1.0.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "unicode_ident",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.6",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.valuable-0.1.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.valuable-0.1.0.bazel
index cfd3830..8299e6a 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.valuable-0.1.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.valuable-0.1.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "valuable",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "0.1.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__valuable-0.1.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_pkgs__valuable-0.1.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "valuable_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "alloc",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.1.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "valuable_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.want-0.3.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.want-0.3.0.bazel
index 6e5d3f5..d8720ef 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.want-0.3.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.want-0.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "want",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.3.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__log-0.4.17//:log",
-            "@crates_vendor_pkgs__try-lock-0.2.3//:try_lock",
-        ],
-    }),
+        "@crates_vendor_pkgs__log-0.4.17//:log",
+        "@crates_vendor_pkgs__try-lock-0.2.3//:try_lock",
+    ],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.winapi-0.3.9.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.winapi-0.3.9.bazel
index 7010aa1..e931abf 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.winapi-0.3.9.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.winapi-0.3.9.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "winapi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "cfg",
         "consoleapi",
@@ -83,29 +64,8 @@
         "ws2tcpip",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -114,33 +74,13 @@
     ],
     version = "0.3.9",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__winapi-0.3.9//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_pkgs__winapi-0.3.9//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "cfg",
         "consoleapi",
@@ -179,32 +119,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -213,28 +135,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.9",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
index 99afa5b..80ce40a 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_i686_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__winapi-i686-pc-windows-gnu-0.4.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_pkgs__winapi-i686-pc-windows-gnu-0.4.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-i686-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-i686-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
index f7441dc..df3fb81 100644
--- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
+++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//vendor_remote_pkgs:crates_vendor_pkgs
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_x86_64_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@crates_vendor_pkgs__winapi-x86_64-pc-windows-gnu-0.4.0//:build_script_build",
-        ],
-    }),
+        "@crates_vendor_pkgs__winapi-x86_64-pc-windows-gnu-0.4.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-x86_64-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-x86_64-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/sys/basic/3rdparty/crates/BUILD.bazel b/examples/sys/basic/3rdparty/crates/BUILD.bazel
index b437bf6..b0218c8 100644
--- a/examples/sys/basic/3rdparty/crates/BUILD.bazel
+++ b/examples/sys/basic/3rdparty/crates/BUILD.bazel
@@ -3,7 +3,7 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/basic/3rdparty:crates_vendor
+#     bazel run @//sys/basic/3rdparty:crates_vendor
 ###############################################################################
 
 package(default_visibility = ["//visibility:public"])
@@ -11,11 +11,9 @@
 exports_files(
     [
         "cargo-bazel.json",
-        "defs.bzl",
         "crates.bzl",
-    ] + glob([
-        "*.bazel",
-    ]),
+        "defs.bzl",
+    ] + glob(["*.bazel"]),
 )
 
 filegroup(
@@ -32,10 +30,3 @@
     actual = "@basic_sys__bzip2-0.3.3//:bzip2",
     tags = ["manual"],
 )
-
-# Binaries
-alias(
-    name = "cc__gcc-shim",
-    actual = "@basic_sys__cc-1.0.77//:gcc-shim__bin",
-    tags = ["manual"],
-)
diff --git a/examples/sys/basic/3rdparty/crates/BUILD.bzip2-0.3.3.bazel b/examples/sys/basic/3rdparty/crates/BUILD.bzip2-0.3.3.bazel
index 79844d2..02febbb 100644
--- a/examples/sys/basic/3rdparty/crates/BUILD.bzip2-0.3.3.bazel
+++ b/examples/sys/basic/3rdparty/crates/BUILD.bzip2-0.3.3.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/basic/3rdparty:crates_vendor
+#     bazel run @//sys/basic/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "bzip2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.3.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@basic_sys__bzip2-sys-0.1.11-1.0.8//:bzip2_sys",
-            "@basic_sys__libc-0.2.137//:libc",
-        ],
-    }),
+        "@basic_sys__bzip2-sys-0.1.11-1.0.8//:bzip2_sys",
+        "@basic_sys__libc-0.2.137//:libc",
+    ],
 )
diff --git a/examples/sys/basic/3rdparty/crates/BUILD.bzip2-sys-0.1.11+1.0.8.bazel b/examples/sys/basic/3rdparty/crates/BUILD.bzip2-sys-0.1.11+1.0.8.bazel
index 652babf..81b2f05 100644
--- a/examples/sys/basic/3rdparty/crates/BUILD.bzip2-sys-0.1.11+1.0.8.bazel
+++ b/examples/sys/basic/3rdparty/crates/BUILD.bzip2-sys-0.1.11+1.0.8.bazel
@@ -3,16 +3,10 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/basic/3rdparty:crates_vendor
+#     bazel run @//sys/basic/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "bzip2_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,69 +42,29 @@
     ],
     version = "0.1.11+1.0.8",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@basic_sys__bzip2-sys-0.1.11-1.0.8//:build_script_build",
-            "@basic_sys__libc-0.2.137//:libc",
-        ],
-    }),
+        "@basic_sys__bzip2-sys-0.1.11-1.0.8//:build_script_build",
+        "@basic_sys__libc-0.2.137//:libc",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "bzip2-sys_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
     links = "bzip2",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -155,30 +73,16 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.1.11+1.0.8",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@basic_sys__cc-1.0.77//:cc",
-            "@basic_sys__pkg-config-0.3.26//:pkg_config",
-        ],
-    }),
+        "@basic_sys__cc-1.0.77//:cc",
+        "@basic_sys__pkg-config-0.3.26//:pkg_config",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target namename of any build script cannot be the Cargo canonical name
-    # of `build_script_build` without losing out on having certain Cargo
-    # environment variables set.
     name = "build_script_build",
     actual = "bzip2-sys_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/sys/basic/3rdparty/crates/BUILD.cc-1.0.77.bazel b/examples/sys/basic/3rdparty/crates/BUILD.cc-1.0.77.bazel
index 9397857..e46e1a4 100644
--- a/examples/sys/basic/3rdparty/crates/BUILD.cc-1.0.77.bazel
+++ b/examples/sys/basic/3rdparty/crates/BUILD.cc-1.0.77.bazel
@@ -3,14 +3,11 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/basic/3rdparty:crates_vendor
+#     bazel run @//sys/basic/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
-    "rust_binary",
     "rust_library",
 )
 
@@ -22,56 +19,20 @@
 
 rust_library(
     name = "cc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,76 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.77",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-)
-
-rust_binary(
-    name = "gcc-shim__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    compile_data = glob(
-        include = ["**"],
-        exclude = [
-            "**/* *",
-            "BUILD.bazel",
-            "BUILD",
-            "WORKSPACE.bazel",
-            "WORKSPACE",
-        ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
-    crate_root = "src/bin/gcc-shim.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
-    tags = [
-        "cargo-bazel",
-        "manual",
-        "noclippy",
-        "norustfmt",
-    ],
-    version = "1.0.77",
-    deps = [
-        ":cc",
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/sys/basic/3rdparty/crates/BUILD.libc-0.2.137.bazel b/examples/sys/basic/3rdparty/crates/BUILD.libc-0.2.137.bazel
index cb0c5c3..f2d0941 100644
--- a/examples/sys/basic/3rdparty/crates/BUILD.libc-0.2.137.bazel
+++ b/examples/sys/basic/3rdparty/crates/BUILD.libc-0.2.137.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/basic/3rdparty:crates_vendor
+#     bazel run @//sys/basic/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "libc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "0.2.137",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/sys/basic/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel b/examples/sys/basic/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel
index 4aec4de..b63cb49 100644
--- a/examples/sys/basic/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel
+++ b/examples/sys/basic/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/basic/3rdparty:crates_vendor
+#     bazel run @//sys/basic/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "pkg_config",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.26",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/sys/basic/3rdparty/crates/defs.bzl b/examples/sys/basic/3rdparty/crates/defs.bzl
index 1d8bee3..e6cca7a 100644
--- a/examples/sys/basic/3rdparty/crates/defs.bzl
+++ b/examples/sys/basic/3rdparty/crates/defs.bzl
@@ -3,7 +3,7 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/basic/3rdparty:crates_vendor
+#     bazel run @//sys/basic/3rdparty:crates_vendor
 ###############################################################################
 """
 # `crates_repository` API
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.bazel b/examples/sys/complex/3rdparty/crates/BUILD.bazel
index 43a7c19..f2e83db 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.bazel
@@ -3,7 +3,7 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
 package(default_visibility = ["//visibility:public"])
@@ -11,11 +11,9 @@
 exports_files(
     [
         "cargo-bazel.json",
-        "defs.bzl",
         "crates.bzl",
-    ] + glob([
-        "*.bazel",
-    ]),
+        "defs.bzl",
+    ] + glob(["*.bazel"]),
 )
 
 filegroup(
@@ -32,10 +30,3 @@
     actual = "@complex_sys__git2-0.14.4//:git2",
     tags = ["manual"],
 )
-
-# Binaries
-alias(
-    name = "cc__gcc-shim",
-    actual = "@complex_sys__cc-1.0.77//:gcc-shim__bin",
-    tags = ["manual"],
-)
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.bitflags-1.3.2.bazel b/examples/sys/complex/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
index 6dbfbc3..8f61f85 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "bitflags",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "1.3.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.cc-1.0.77.bazel b/examples/sys/complex/3rdparty/crates/BUILD.cc-1.0.77.bazel
index 49e826b..928109c 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.cc-1.0.77.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.cc-1.0.77.bazel
@@ -3,14 +3,11 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
-    "rust_binary",
     "rust_library",
 )
 
@@ -22,58 +19,24 @@
 
 rust_library(
     name = "cc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "jobserver",
         "parallel",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,79 +45,6 @@
     ],
     version = "1.0.77",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@complex_sys__jobserver-0.1.25//:jobserver",
-        ],
-    }),
-)
-
-rust_binary(
-    name = "gcc-shim__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    compile_data = glob(
-        include = ["**"],
-        exclude = [
-            "**/* *",
-            "BUILD.bazel",
-            "BUILD",
-            "WORKSPACE.bazel",
-            "WORKSPACE",
-        ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "jobserver",
-        "parallel",
+        "@complex_sys__jobserver-0.1.25//:jobserver",
     ],
-    crate_root = "src/bin/gcc-shim.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
-    tags = [
-        "cargo-bazel",
-        "manual",
-        "noclippy",
-        "norustfmt",
-    ],
-    version = "1.0.77",
-    deps = [
-        ":cc",
-    ] + select({
-        "//conditions:default": [
-            "@complex_sys__jobserver-0.1.25//:jobserver",
-        ],
-    }),
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel b/examples/sys/complex/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
index 69d37db..92adbcb 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cfg_if",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.form_urlencoded-1.1.0.bazel b/examples/sys/complex/3rdparty/crates/BUILD.form_urlencoded-1.1.0.bazel
index ee50b65..c9e199e 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.form_urlencoded-1.1.0.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.form_urlencoded-1.1.0.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "form_urlencoded",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "1.1.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@complex_sys__percent-encoding-2.2.0//:percent_encoding",
-        ],
-    }),
+        "@complex_sys__percent-encoding-2.2.0//:percent_encoding",
+    ],
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.git2-0.14.4.bazel b/examples/sys/complex/3rdparty/crates/BUILD.git2-0.14.4.bazel
index f73ff79..034e1d5 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.git2-0.14.4.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.git2-0.14.4.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "git2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,13 +41,10 @@
     ],
     version = "0.14.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@complex_sys__bitflags-1.3.2//:bitflags",
-            "@complex_sys__libc-0.2.137//:libc",
-            "@complex_sys__libgit2-sys-0.13.4-1.4.2//:libgit2_sys",
-            "@complex_sys__log-0.4.17//:log",
-            "@complex_sys__url-2.3.1//:url",
-        ],
-    }),
+        "@complex_sys__bitflags-1.3.2//:bitflags",
+        "@complex_sys__libc-0.2.137//:libc",
+        "@complex_sys__libgit2-sys-0.13.4-1.4.2//:libgit2_sys",
+        "@complex_sys__log-0.4.17//:log",
+        "@complex_sys__url-2.3.1//:url",
+    ],
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.idna-0.3.0.bazel b/examples/sys/complex/3rdparty/crates/BUILD.idna-0.3.0.bazel
index 5c03d13..c037254 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.idna-0.3.0.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.idna-0.3.0.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "idna",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.3.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@complex_sys__unicode-bidi-0.3.8//:unicode_bidi",
-            "@complex_sys__unicode-normalization-0.1.22//:unicode_normalization",
-        ],
-    }),
+        "@complex_sys__unicode-bidi-0.3.8//:unicode_bidi",
+        "@complex_sys__unicode-normalization-0.1.22//:unicode_normalization",
+    ],
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.jobserver-0.1.25.bazel b/examples/sys/complex/3rdparty/crates/BUILD.jobserver-0.1.25.bazel
index 6f20d2c..d1b7a2d 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.jobserver-0.1.25.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.jobserver-0.1.25.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "jobserver",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.1.25",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@complex_sys__libc-0.2.137//:libc",  # cfg(unix)
         ],
@@ -137,7 +98,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@complex_sys__libc-0.2.137//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.libc-0.2.137.bazel b/examples/sys/complex/3rdparty/crates/BUILD.libc-0.2.137.bazel
index 1efcf76..3da6344 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.libc-0.2.137.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.libc-0.2.137.bazel
@@ -3,16 +3,10 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "libc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "0.2.137",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@complex_sys__libc-0.2.137//:build_script_build",
-        ],
-    }),
+        "@complex_sys__libc-0.2.137//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "libc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.137",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target namename of any build script cannot be the Cargo canonical name
-    # of `build_script_build` without losing out on having certain Cargo
-    # environment variables set.
     name = "build_script_build",
     actual = "libc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.libgit2-sys-0.13.4+1.4.2.bazel b/examples/sys/complex/3rdparty/crates/BUILD.libgit2-sys-0.13.4+1.4.2.bazel
index 99d98ae..1efb955 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.libgit2-sys-0.13.4+1.4.2.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.libgit2-sys-0.13.4+1.4.2.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "libgit2_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.13.4+1.4.2",
     deps = [
+        "@complex_sys__libc-0.2.137//:libc",
+        "@complex_sys__libz-sys-1.1.8//:libz_sys",
         "@libgit2",
-    ] + select({
-        "//conditions:default": [
-            "@complex_sys__libc-0.2.137//:libc",
-            "@complex_sys__libz-sys-1.1.8//:libz_sys",
-        ],
-    }),
+    ],
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.libz-sys-1.1.8.bazel b/examples/sys/complex/3rdparty/crates/BUILD.libz-sys-1.1.8.bazel
index 96c57e2..4f6713b 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.libz-sys-1.1.8.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.libz-sys-1.1.8.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "libz_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "libc",
-    ],
+    ),
+    crate_features = ["libc"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,10 +42,7 @@
     ],
     version = "1.1.8",
     deps = [
+        "@complex_sys__libc-0.2.137//:libc",
         "@zlib",
-    ] + select({
-        "//conditions:default": [
-            "@complex_sys__libc-0.2.137//:libc",
-        ],
-    }),
+    ],
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.log-0.4.17.bazel b/examples/sys/complex/3rdparty/crates/BUILD.log-0.4.17.bazel
index 0c6cc29..da3e738 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.log-0.4.17.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.log-0.4.17.bazel
@@ -3,16 +3,10 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "log",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.4.17",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@complex_sys__cfg-if-1.0.0//:cfg_if",
-            "@complex_sys__log-0.4.17//:build_script_build",
-        ],
-    }),
+        "@complex_sys__cfg-if-1.0.0//:cfg_if",
+        "@complex_sys__log-0.4.17//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "log_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,28 +72,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.17",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target namename of any build script cannot be the Cargo canonical name
-    # of `build_script_build` without losing out on having certain Cargo
-    # environment variables set.
     name = "build_script_build",
     actual = "log_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.percent-encoding-2.2.0.bazel b/examples/sys/complex/3rdparty/crates/BUILD.percent-encoding-2.2.0.bazel
index 01356ae..2ea8915 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.percent-encoding-2.2.0.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.percent-encoding-2.2.0.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "percent_encoding",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "2.2.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel b/examples/sys/complex/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel
index 9f1c4bc..3770ef8 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "pkg_config",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.26",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.tinyvec-1.6.0.bazel b/examples/sys/complex/3rdparty/crates/BUILD.tinyvec-1.6.0.bazel
index 6675b7c..c169d21 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.tinyvec-1.6.0.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.tinyvec-1.6.0.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "tinyvec",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
         "tinyvec_macros",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,6 @@
     ],
     version = "1.6.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@complex_sys__tinyvec_macros-0.1.0//:tinyvec_macros",
-        ],
-    }),
+        "@complex_sys__tinyvec_macros-0.1.0//:tinyvec_macros",
+    ],
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.tinyvec_macros-0.1.0.bazel b/examples/sys/complex/3rdparty/crates/BUILD.tinyvec_macros-0.1.0.bazel
index bd9fc8c..c423d1b 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.tinyvec_macros-0.1.0.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.tinyvec_macros-0.1.0.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tinyvec_macros",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.unicode-bidi-0.3.8.bazel b/examples/sys/complex/3rdparty/crates/BUILD.unicode-bidi-0.3.8.bazel
index a34f115..9fee84e 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.unicode-bidi-0.3.8.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.unicode-bidi-0.3.8.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "unicode_bidi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "hardcoded-data",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,4 @@
         "norustfmt",
     ],
     version = "0.3.8",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.unicode-normalization-0.1.22.bazel b/examples/sys/complex/3rdparty/crates/BUILD.unicode-normalization-0.1.22.bazel
index e45cdee..989a04d 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.unicode-normalization-0.1.22.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.unicode-normalization-0.1.22.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "unicode_normalization",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.1.22",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@complex_sys__tinyvec-1.6.0//:tinyvec",
-        ],
-    }),
+        "@complex_sys__tinyvec-1.6.0//:tinyvec",
+    ],
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.url-2.3.1.bazel b/examples/sys/complex/3rdparty/crates/BUILD.url-2.3.1.bazel
index 606b026..d936fc0 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.url-2.3.1.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.url-2.3.1.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "url",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,11 +42,8 @@
     ],
     version = "2.3.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@complex_sys__form_urlencoded-1.1.0//:form_urlencoded",
-            "@complex_sys__idna-0.3.0//:idna",
-            "@complex_sys__percent-encoding-2.2.0//:percent_encoding",
-        ],
-    }),
+        "@complex_sys__form_urlencoded-1.1.0//:form_urlencoded",
+        "@complex_sys__idna-0.3.0//:idna",
+        "@complex_sys__percent-encoding-2.2.0//:percent_encoding",
+    ],
 )
diff --git a/examples/sys/complex/3rdparty/crates/BUILD.vcpkg-0.2.15.bazel b/examples/sys/complex/3rdparty/crates/BUILD.vcpkg-0.2.15.bazel
index dbe06b3..4ecfe9d 100644
--- a/examples/sys/complex/3rdparty/crates/BUILD.vcpkg-0.2.15.bazel
+++ b/examples/sys/complex/3rdparty/crates/BUILD.vcpkg-0.2.15.bazel
@@ -3,11 +3,9 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "vcpkg",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.2.15",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/examples/sys/complex/3rdparty/crates/defs.bzl b/examples/sys/complex/3rdparty/crates/defs.bzl
index a94a610..d0eee2a 100644
--- a/examples/sys/complex/3rdparty/crates/defs.bzl
+++ b/examples/sys/complex/3rdparty/crates/defs.bzl
@@ -3,7 +3,7 @@
 # DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To
 # regenerate this file, run the following:
 #
-#     bazel run //sys/complex/3rdparty:crates_vendor
+#     bazel run @//sys/complex/3rdparty:crates_vendor
 ###############################################################################
 """
 # `crates_repository` API
diff --git a/proto/3rdparty/BUILD.bazel b/proto/3rdparty/BUILD.bazel
index 7ae54c7..5d62168 100644
--- a/proto/3rdparty/BUILD.bazel
+++ b/proto/3rdparty/BUILD.bazel
@@ -15,6 +15,7 @@
         )],
     },
     cargo_lockfile = "Cargo.Bazel.lock",
+    generate_binaries = True,
     mode = "remote",
     packages = {
         "grpc": crate.spec(
diff --git a/proto/3rdparty/crates/BUILD.autocfg-1.1.0.bazel b/proto/3rdparty/crates/BUILD.autocfg-1.1.0.bazel
index bc5f2fa..c50026d 100644
--- a/proto/3rdparty/crates/BUILD.autocfg-1.1.0.bazel
+++ b/proto/3rdparty/crates/BUILD.autocfg-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "autocfg",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.base64-0.9.3.bazel b/proto/3rdparty/crates/BUILD.base64-0.9.3.bazel
index 9bef06c..b2daac0 100644
--- a/proto/3rdparty/crates/BUILD.base64-0.9.3.bazel
+++ b/proto/3rdparty/crates/BUILD.base64-0.9.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "base64",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.9.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__byteorder-1.4.3//:byteorder",
-            "@rules_rust_proto__safemem-0.3.3//:safemem",
-        ],
-    }),
+        "@rules_rust_proto__byteorder-1.4.3//:byteorder",
+        "@rules_rust_proto__safemem-0.3.3//:safemem",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.bazel b/proto/3rdparty/crates/BUILD.bazel
index bc662ce..3ffd511 100644
--- a/proto/3rdparty/crates/BUILD.bazel
+++ b/proto/3rdparty/crates/BUILD.bazel
@@ -13,21 +13,15 @@
         "cargo-bazel.json",
         "crates.bzl",
         "defs.bzl",
-    ] + glob(
-        include = ["*.bazel"],
-        exclude = [],
-    ),
+    ] + glob(["*.bazel"]),
 )
 
 filegroup(
     name = "srcs",
-    srcs = glob(
-        include = [
-            "*.bazel",
-            "*.bzl",
-        ],
-        exclude = [],
-    ),
+    srcs = glob([
+        "*.bazel",
+        "*.bzl",
+    ]),
 )
 
 # Workspace Member Dependencies
diff --git a/proto/3rdparty/crates/BUILD.bitflags-1.3.2.bazel b/proto/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
index 8c4e1aa..91ac98c 100644
--- a/proto/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
+++ b/proto/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "bitflags",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "1.3.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.byteorder-1.4.3.bazel b/proto/3rdparty/crates/BUILD.byteorder-1.4.3.bazel
index cea2662..689ca48 100644
--- a/proto/3rdparty/crates/BUILD.byteorder-1.4.3.bazel
+++ b/proto/3rdparty/crates/BUILD.byteorder-1.4.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "byteorder",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "1.4.3",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.bytes-0.4.12.bazel b/proto/3rdparty/crates/BUILD.bytes-0.4.12.bazel
index d183417..3b9ac8a 100644
--- a/proto/3rdparty/crates/BUILD.bytes-0.4.12.bazel
+++ b/proto/3rdparty/crates/BUILD.bytes-0.4.12.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "bytes",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.4.12",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__byteorder-1.4.3//:byteorder",
-            "@rules_rust_proto__iovec-0.1.4//:iovec",
-        ],
-    }),
+        "@rules_rust_proto__byteorder-1.4.3//:byteorder",
+        "@rules_rust_proto__iovec-0.1.4//:iovec",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.cfg-if-0.1.10.bazel b/proto/3rdparty/crates/BUILD.cfg-if-0.1.10.bazel
index 06723d8..7c6a139 100644
--- a/proto/3rdparty/crates/BUILD.cfg-if-0.1.10.bazel
+++ b/proto/3rdparty/crates/BUILD.cfg-if-0.1.10.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cfg_if",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.10",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel b/proto/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
index f6b2515..d9a832b 100644
--- a/proto/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
+++ b/proto/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cfg_if",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.cloudabi-0.0.3.bazel b/proto/3rdparty/crates/BUILD.cloudabi-0.0.3.bazel
index c2d87fd..524f6a3 100644
--- a/proto/3rdparty/crates/BUILD.cloudabi-0.0.3.bazel
+++ b/proto/3rdparty/crates/BUILD.cloudabi-0.0.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "cloudabi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "bitflags",
         "default",
     ],
     crate_root = "cloudabi.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.0.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__bitflags-1.3.2//:bitflags",
-        ],
-    }),
+        "@rules_rust_proto__bitflags-1.3.2//:bitflags",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.crossbeam-deque-0.7.4.bazel b/proto/3rdparty/crates/BUILD.crossbeam-deque-0.7.4.bazel
index 94d22a4..88c3277 100644
--- a/proto/3rdparty/crates/BUILD.crossbeam-deque-0.7.4.bazel
+++ b/proto/3rdparty/crates/BUILD.crossbeam-deque-0.7.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "crossbeam_deque",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.7.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__crossbeam-epoch-0.8.2//:crossbeam_epoch",
-            "@rules_rust_proto__crossbeam-utils-0.7.2//:crossbeam_utils",
-            "@rules_rust_proto__maybe-uninit-2.0.0//:maybe_uninit",
-        ],
-    }),
+        "@rules_rust_proto__crossbeam-epoch-0.8.2//:crossbeam_epoch",
+        "@rules_rust_proto__crossbeam-utils-0.7.2//:crossbeam_utils",
+        "@rules_rust_proto__maybe-uninit-2.0.0//:maybe_uninit",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.crossbeam-epoch-0.8.2.bazel b/proto/3rdparty/crates/BUILD.crossbeam-epoch-0.8.2.bazel
index 9a2c254..e70d4f9 100644
--- a/proto/3rdparty/crates/BUILD.crossbeam-epoch-0.8.2.bazel
+++ b/proto/3rdparty/crates/BUILD.crossbeam-epoch-0.8.2.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "crossbeam_epoch",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "lazy_static",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,39 +47,19 @@
     ],
     version = "0.8.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",
-            "@rules_rust_proto__crossbeam-epoch-0.8.2//:build_script_build",
-            "@rules_rust_proto__crossbeam-utils-0.7.2//:crossbeam_utils",
-            "@rules_rust_proto__lazy_static-1.4.0//:lazy_static",
-            "@rules_rust_proto__maybe-uninit-2.0.0//:maybe_uninit",
-            "@rules_rust_proto__memoffset-0.5.6//:memoffset",
-            "@rules_rust_proto__scopeguard-1.1.0//:scopeguard",
-        ],
-    }),
+        "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",
+        "@rules_rust_proto__crossbeam-epoch-0.8.2//:build_script_build",
+        "@rules_rust_proto__crossbeam-utils-0.7.2//:crossbeam_utils",
+        "@rules_rust_proto__lazy_static-1.4.0//:lazy_static",
+        "@rules_rust_proto__maybe-uninit-2.0.0//:maybe_uninit",
+        "@rules_rust_proto__memoffset-0.5.6//:memoffset",
+        "@rules_rust_proto__scopeguard-1.1.0//:scopeguard",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "crossbeam-epoch_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "lazy_static",
@@ -131,32 +71,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -165,29 +87,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.8.2",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@rules_rust_proto__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "crossbeam-epoch_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/proto/3rdparty/crates/BUILD.crossbeam-queue-0.2.3.bazel b/proto/3rdparty/crates/BUILD.crossbeam-queue-0.2.3.bazel
index 4bbc302..b3ebf21 100644
--- a/proto/3rdparty/crates/BUILD.crossbeam-queue-0.2.3.bazel
+++ b/proto/3rdparty/crates/BUILD.crossbeam-queue-0.2.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "crossbeam_queue",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,11 +45,8 @@
     ],
     version = "0.2.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",
-            "@rules_rust_proto__crossbeam-utils-0.7.2//:crossbeam_utils",
-            "@rules_rust_proto__maybe-uninit-2.0.0//:maybe_uninit",
-        ],
-    }),
+        "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",
+        "@rules_rust_proto__crossbeam-utils-0.7.2//:crossbeam_utils",
+        "@rules_rust_proto__maybe-uninit-2.0.0//:maybe_uninit",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.crossbeam-utils-0.7.2.bazel b/proto/3rdparty/crates/BUILD.crossbeam-utils-0.7.2.bazel
index cb17d65..49f91e3 100644
--- a/proto/3rdparty/crates/BUILD.crossbeam-utils-0.7.2.bazel
+++ b/proto/3rdparty/crates/BUILD.crossbeam-utils-0.7.2.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "crossbeam_utils",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "lazy_static",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,35 +47,15 @@
     ],
     version = "0.7.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",
-            "@rules_rust_proto__crossbeam-utils-0.7.2//:build_script_build",
-            "@rules_rust_proto__lazy_static-1.4.0//:lazy_static",
-        ],
-    }),
+        "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",
+        "@rules_rust_proto__crossbeam-utils-0.7.2//:build_script_build",
+        "@rules_rust_proto__lazy_static-1.4.0//:lazy_static",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "crossbeam-utils_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "lazy_static",
@@ -127,32 +67,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -161,29 +83,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.7.2",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@rules_rust_proto__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "crossbeam-utils_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/proto/3rdparty/crates/BUILD.fnv-1.0.7.bazel b/proto/3rdparty/crates/BUILD.fnv-1.0.7.bazel
index d7f3f81..e7387ee 100644
--- a/proto/3rdparty/crates/BUILD.fnv-1.0.7.bazel
+++ b/proto/3rdparty/crates/BUILD.fnv-1.0.7.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "fnv",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "1.0.7",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.fuchsia-zircon-0.3.3.bazel b/proto/3rdparty/crates/BUILD.fuchsia-zircon-0.3.3.bazel
index 9cac34c..dc9bc0a 100644
--- a/proto/3rdparty/crates/BUILD.fuchsia-zircon-0.3.3.bazel
+++ b/proto/3rdparty/crates/BUILD.fuchsia-zircon-0.3.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "fuchsia_zircon",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.3.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__bitflags-1.3.2//:bitflags",
-            "@rules_rust_proto__fuchsia-zircon-sys-0.3.3//:fuchsia_zircon_sys",
-        ],
-    }),
+        "@rules_rust_proto__bitflags-1.3.2//:bitflags",
+        "@rules_rust_proto__fuchsia-zircon-sys-0.3.3//:fuchsia_zircon_sys",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.fuchsia-zircon-sys-0.3.3.bazel b/proto/3rdparty/crates/BUILD.fuchsia-zircon-sys-0.3.3.bazel
index 5bb2915..31f2160 100644
--- a/proto/3rdparty/crates/BUILD.fuchsia-zircon-sys-0.3.3.bazel
+++ b/proto/3rdparty/crates/BUILD.fuchsia-zircon-sys-0.3.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "fuchsia_zircon_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.3",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.futures-0.1.31.bazel b/proto/3rdparty/crates/BUILD.futures-0.1.31.bazel
index 238ca67..b2b2fac 100644
--- a/proto/3rdparty/crates/BUILD.futures-0.1.31.bazel
+++ b/proto/3rdparty/crates/BUILD.futures-0.1.31.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "futures",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "use_std",
         "with-deprecated",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,4 @@
         "norustfmt",
     ],
     version = "0.1.31",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.futures-cpupool-0.1.8.bazel b/proto/3rdparty/crates/BUILD.futures-cpupool-0.1.8.bazel
index 7e6cb21..87612b8 100644
--- a/proto/3rdparty/crates/BUILD.futures-cpupool-0.1.8.bazel
+++ b/proto/3rdparty/crates/BUILD.futures-cpupool-0.1.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "futures_cpupool",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "with-deprecated",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,10 +45,7 @@
     ],
     version = "0.1.8",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",
-        ],
-    }),
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.grpc-0.6.2.bazel b/proto/3rdparty/crates/BUILD.grpc-0.6.2.bazel
index b2661bc..aa07305 100644
--- a/proto/3rdparty/crates/BUILD.grpc-0.6.2.bazel
+++ b/proto/3rdparty/crates/BUILD.grpc-0.6.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "grpc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,20 +41,17 @@
     ],
     version = "0.6.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__base64-0.9.3//:base64",
-            "@rules_rust_proto__bytes-0.4.12//:bytes",
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",
-            "@rules_rust_proto__httpbis-0.7.0//:httpbis",
-            "@rules_rust_proto__log-0.4.17//:log",
-            "@rules_rust_proto__protobuf-2.8.2//:protobuf",
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",
-        ],
-    }),
+        "@rules_rust_proto__base64-0.9.3//:base64",
+        "@rules_rust_proto__bytes-0.4.12//:bytes",
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",
+        "@rules_rust_proto__httpbis-0.7.0//:httpbis",
+        "@rules_rust_proto__log-0.4.17//:log",
+        "@rules_rust_proto__protobuf-2.8.2//:protobuf",
+        "@rules_rust_proto__tls-api-0.1.22//:tls_api",
+        "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",
+        "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",
+        "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
+        "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.grpc-compiler-0.6.2.bazel b/proto/3rdparty/crates/BUILD.grpc-compiler-0.6.2.bazel
index ad98b6f..f1baf90 100644
--- a/proto/3rdparty/crates/BUILD.grpc-compiler-0.6.2.bazel
+++ b/proto/3rdparty/crates/BUILD.grpc-compiler-0.6.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_binary",
@@ -22,56 +20,20 @@
 
 rust_library(
     name = "grpc_compiler",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,66 +42,27 @@
     ],
     version = "0.6.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__protobuf-2.8.2//:protobuf",
-            "@rules_rust_proto__protobuf-codegen-2.8.2//:protobuf_codegen",
-        ],
-    }),
+        "@rules_rust_proto__protobuf-2.8.2//:protobuf",
+        "@rules_rust_proto__protobuf-codegen-2.8.2//:protobuf_codegen",
+    ],
 )
 
 rust_binary(
     name = "protoc-gen-rust-grpc__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/bin/protoc-gen-rust-grpc.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -149,10 +72,7 @@
     version = "0.6.2",
     deps = [
         ":grpc_compiler",
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__protobuf-2.8.2//:protobuf",
-            "@rules_rust_proto__protobuf-codegen-2.8.2//:protobuf_codegen",
-        ],
-    }),
+        "@rules_rust_proto__protobuf-2.8.2//:protobuf",
+        "@rules_rust_proto__protobuf-codegen-2.8.2//:protobuf_codegen",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.hermit-abi-0.2.6.bazel b/proto/3rdparty/crates/BUILD.hermit-abi-0.2.6.bazel
index 0189162..70e18d1 100644
--- a/proto/3rdparty/crates/BUILD.hermit-abi-0.2.6.bazel
+++ b/proto/3rdparty/crates/BUILD.hermit-abi-0.2.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hermit_abi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.2.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__libc-0.2.139//:libc",
-        ],
-    }),
+        "@rules_rust_proto__libc-0.2.139//:libc",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.httpbis-0.7.0.bazel b/proto/3rdparty/crates/BUILD.httpbis-0.7.0.bazel
index 3c657c0..2403567 100644
--- a/proto/3rdparty/crates/BUILD.httpbis-0.7.0.bazel
+++ b/proto/3rdparty/crates/BUILD.httpbis-0.7.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "httpbis",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,402 +42,117 @@
     ],
     version = "0.7.0",
     deps = [
+        "@rules_rust_proto__bytes-0.4.12//:bytes",
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",
+        "@rules_rust_proto__httpbis-0.7.0//:build_script_build",
+        "@rules_rust_proto__log-0.4.17//:log",
+        "@rules_rust_proto__net2-0.2.38//:net2",
+        "@rules_rust_proto__tls-api-0.1.22//:tls_api",
+        "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",
+        "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",
+        "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
+        "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",
+        "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",
+        "@rules_rust_proto__void-1.0.2//:void",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",  # common dependency
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",  # common dependency
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",  # common dependency
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",  # common dependency
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",  # common dependency
             "@rules_rust_proto__tokio-uds-0.1.7//:tokio_uds",  # cfg(unix)
             "@rules_rust_proto__unix_socket-0.5.0//:unix_socket",  # cfg(unix)
-            "@rules_rust_proto__void-1.0.2//:void",  # common dependency
         ],
-        "//conditions:default": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__futures-cpupool-0.1.8//:futures_cpupool",
-            "@rules_rust_proto__httpbis-0.7.0//:build_script_build",
-            "@rules_rust_proto__log-0.4.17//:log",
-            "@rules_rust_proto__net2-0.2.38//:net2",
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",
-            "@rules_rust_proto__tls-api-stub-0.1.22//:tls_api_stub",
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
-            "@rules_rust_proto__tokio-timer-0.1.2//:tokio_timer",
-            "@rules_rust_proto__tokio-tls-api-0.1.22//:tokio_tls_api",
-            "@rules_rust_proto__void-1.0.2//:void",
-        ],
+        "//conditions:default": [],
     }),
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "httpbis_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -488,28 +161,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.7.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "httpbis_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/proto/3rdparty/crates/BUILD.iovec-0.1.4.bazel b/proto/3rdparty/crates/BUILD.iovec-0.1.4.bazel
index 2ba1f37..ae0d7f5 100644
--- a/proto/3rdparty/crates/BUILD.iovec-0.1.4.bazel
+++ b/proto/3rdparty/crates/BUILD.iovec-0.1.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "iovec",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.1.4",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
         ],
@@ -137,7 +98,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/proto/3rdparty/crates/BUILD.kernel32-sys-0.2.2.bazel b/proto/3rdparty/crates/BUILD.kernel32-sys-0.2.2.bazel
index 9be255c..f462bbe 100644
--- a/proto/3rdparty/crates/BUILD.kernel32-sys-0.2.2.bazel
+++ b/proto/3rdparty/crates/BUILD.kernel32-sys-0.2.2.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "kernel32",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.2.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__kernel32-sys-0.2.2//:build_script_build",
-            "@rules_rust_proto__winapi-0.2.8//:winapi",
-        ],
-    }),
+        "@rules_rust_proto__kernel32-sys-0.2.2//:build_script_build",
+        "@rules_rust_proto__winapi-0.2.8//:winapi",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "kernel32-sys_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,29 +72,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.2",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__winapi-build-0.1.1//:build",
-        ],
-    }),
+        "@rules_rust_proto__winapi-build-0.1.1//:build",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "kernel32-sys_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/proto/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel b/proto/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel
index 4e4d2be..198ec71 100644
--- a/proto/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel
+++ b/proto/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "lazy_static",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
-
-        # User provided rustc_flags
         "--cfg=lazy_static_heap_impl",
     ],
     tags = [
@@ -81,9 +43,4 @@
         "norustfmt",
     ],
     version = "1.4.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.libc-0.2.139.bazel b/proto/3rdparty/crates/BUILD.libc-0.2.139.bazel
index 1383a19..0a5c35d 100644
--- a/proto/3rdparty/crates/BUILD.libc-0.2.139.bazel
+++ b/proto/3rdparty/crates/BUILD.libc-0.2.139.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "libc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "0.2.139",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__libc-0.2.139//:build_script_build",
-        ],
-    }),
+        "@rules_rust_proto__libc-0.2.139//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "libc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.139",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "libc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/proto/3rdparty/crates/BUILD.lock_api-0.3.4.bazel b/proto/3rdparty/crates/BUILD.lock_api-0.3.4.bazel
index 7727d86..8f5e1e4 100644
--- a/proto/3rdparty/crates/BUILD.lock_api-0.3.4.bazel
+++ b/proto/3rdparty/crates/BUILD.lock_api-0.3.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "lock_api",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.3.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__scopeguard-1.1.0//:scopeguard",
-        ],
-    }),
+        "@rules_rust_proto__scopeguard-1.1.0//:scopeguard",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.log-0.3.9.bazel b/proto/3rdparty/crates/BUILD.log-0.3.9.bazel
index 5e696cd..1162b82 100644
--- a/proto/3rdparty/crates/BUILD.log-0.3.9.bazel
+++ b/proto/3rdparty/crates/BUILD.log-0.3.9.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "log",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "use_std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.3.9",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__log-0.4.17//:log",
-        ],
-    }),
+        "@rules_rust_proto__log-0.4.17//:log",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.log-0.4.17.bazel b/proto/3rdparty/crates/BUILD.log-0.4.17.bazel
index 09191a5..ed38ce6 100644
--- a/proto/3rdparty/crates/BUILD.log-0.4.17.bazel
+++ b/proto/3rdparty/crates/BUILD.log-0.4.17.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "log",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,69 +43,29 @@
     ],
     version = "0.4.17",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__cfg-if-1.0.0//:cfg_if",
-            "@rules_rust_proto__log-0.4.17//:build_script_build",
-        ],
-    }),
+        "@rules_rust_proto__cfg-if-1.0.0//:cfg_if",
+        "@rules_rust_proto__log-0.4.17//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "log_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["std"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,28 +74,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.17",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "log_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/proto/3rdparty/crates/BUILD.maybe-uninit-2.0.0.bazel b/proto/3rdparty/crates/BUILD.maybe-uninit-2.0.0.bazel
index 1e637b4..dbc2c34 100644
--- a/proto/3rdparty/crates/BUILD.maybe-uninit-2.0.0.bazel
+++ b/proto/3rdparty/crates/BUILD.maybe-uninit-2.0.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "maybe_uninit",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "2.0.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__maybe-uninit-2.0.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_proto__maybe-uninit-2.0.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "maybe-uninit_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "2.0.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "maybe-uninit_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/proto/3rdparty/crates/BUILD.memoffset-0.5.6.bazel b/proto/3rdparty/crates/BUILD.memoffset-0.5.6.bazel
index 2cd055c..f2dc51b 100644
--- a/proto/3rdparty/crates/BUILD.memoffset-0.5.6.bazel
+++ b/proto/3rdparty/crates/BUILD.memoffset-0.5.6.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "memoffset",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,68 +43,28 @@
     ],
     version = "0.5.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__memoffset-0.5.6//:build_script_build",
-        ],
-    }),
+        "@rules_rust_proto__memoffset-0.5.6//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "memoffset_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["default"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -155,29 +73,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.5.6",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@rules_rust_proto__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "memoffset_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/proto/3rdparty/crates/BUILD.mio-0.6.23.bazel b/proto/3rdparty/crates/BUILD.mio-0.6.23.bazel
index 430de30..594630f 100644
--- a/proto/3rdparty/crates/BUILD.mio-0.6.23.bazel
+++ b/proto/3rdparty/crates/BUILD.mio-0.6.23.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "mio",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "with-deprecated",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,195 +45,84 @@
     ],
     version = "0.6.23",
     deps = [
+        "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",
+        "@rules_rust_proto__iovec-0.1.4//:iovec",
+        "@rules_rust_proto__log-0.4.17//:log",
+        "@rules_rust_proto__net2-0.2.38//:net2",
+        "@rules_rust_proto__slab-0.4.7//:slab",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__kernel32-sys-0.2.2//:kernel32",  # cfg(windows)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
             "@rules_rust_proto__miow-0.2.2//:miow",  # cfg(windows)
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
             "@rules_rust_proto__winapi-0.2.8//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__kernel32-sys-0.2.2//:kernel32",  # cfg(windows)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
             "@rules_rust_proto__miow-0.2.2//:miow",  # cfg(windows)
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
             "@rules_rust_proto__winapi-0.2.8//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__kernel32-sys-0.2.2//:kernel32",  # cfg(windows)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
             "@rules_rust_proto__miow-0.2.2//:miow",  # cfg(windows)
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
             "@rules_rust_proto__winapi-0.2.8//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__iovec-0.1.4//:iovec",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__log-0.4.17//:log",  # common dependency
-            "@rules_rust_proto__net2-0.2.38//:net2",  # common dependency
-            "@rules_rust_proto__slab-0.4.7//:slab",  # common dependency
         ],
-        "//conditions:default": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",
-            "@rules_rust_proto__iovec-0.1.4//:iovec",
-            "@rules_rust_proto__log-0.4.17//:log",
-            "@rules_rust_proto__net2-0.2.38//:net2",
-            "@rules_rust_proto__slab-0.4.7//:slab",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/proto/3rdparty/crates/BUILD.mio-uds-0.6.8.bazel b/proto/3rdparty/crates/BUILD.mio-uds-0.6.8.bazel
index 33960a7..e7bdee4 100644
--- a/proto/3rdparty/crates/BUILD.mio-uds-0.6.8.bazel
+++ b/proto/3rdparty/crates/BUILD.mio-uds-0.6.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "mio_uds",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.6.8",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@rules_rust_proto__iovec-0.1.4//:iovec",  # cfg(unix)
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
@@ -175,7 +136,6 @@
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
             "@rules_rust_proto__mio-0.6.23//:mio",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/proto/3rdparty/crates/BUILD.miow-0.2.2.bazel b/proto/3rdparty/crates/BUILD.miow-0.2.2.bazel
index 3f10210..4b4ae09 100644
--- a/proto/3rdparty/crates/BUILD.miow-0.2.2.bazel
+++ b/proto/3rdparty/crates/BUILD.miow-0.2.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "miow",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,12 +41,9 @@
     ],
     version = "0.2.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__kernel32-sys-0.2.2//:kernel32",
-            "@rules_rust_proto__net2-0.2.38//:net2",
-            "@rules_rust_proto__winapi-0.2.8//:winapi",
-            "@rules_rust_proto__ws2_32-sys-0.2.1//:ws2_32",
-        ],
-    }),
+        "@rules_rust_proto__kernel32-sys-0.2.2//:kernel32",
+        "@rules_rust_proto__net2-0.2.38//:net2",
+        "@rules_rust_proto__winapi-0.2.8//:winapi",
+        "@rules_rust_proto__ws2_32-sys-0.2.1//:ws2_32",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.net2-0.2.38.bazel b/proto/3rdparty/crates/BUILD.net2-0.2.38.bazel
index 07e88fc..2a73ae9 100644
--- a/proto/3rdparty/crates/BUILD.net2-0.2.38.bazel
+++ b/proto/3rdparty/crates/BUILD.net2-0.2.38.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "net2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "duration",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,101 +45,77 @@
     ],
     version = "0.2.38",
     deps = [
+        "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
         ],
-        "//conditions:default": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/proto/3rdparty/crates/BUILD.num_cpus-1.15.0.bazel b/proto/3rdparty/crates/BUILD.num_cpus-1.15.0.bazel
index e23f58f..36b64a2 100644
--- a/proto/3rdparty/crates/BUILD.num_cpus-1.15.0.bazel
+++ b/proto/3rdparty/crates/BUILD.num_cpus-1.15.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "num_cpus",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "1.15.0",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
@@ -149,7 +110,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/proto/3rdparty/crates/BUILD.parking_lot-0.9.0.bazel b/proto/3rdparty/crates/BUILD.parking_lot-0.9.0.bazel
index 629e94d..ea5bb70 100644
--- a/proto/3rdparty/crates/BUILD.parking_lot-0.9.0.bazel
+++ b/proto/3rdparty/crates/BUILD.parking_lot-0.9.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "parking_lot",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,70 +43,30 @@
     ],
     version = "0.9.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__lock_api-0.3.4//:lock_api",
-            "@rules_rust_proto__parking_lot-0.9.0//:build_script_build",
-            "@rules_rust_proto__parking_lot_core-0.6.3//:parking_lot_core",
-        ],
-    }),
+        "@rules_rust_proto__lock_api-0.3.4//:lock_api",
+        "@rules_rust_proto__parking_lot-0.9.0//:build_script_build",
+        "@rules_rust_proto__parking_lot_core-0.6.3//:parking_lot_core",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "parking_lot_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["default"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,29 +75,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.9.0",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__rustc_version-0.2.3//:rustc_version",
-        ],
-    }),
+        "@rules_rust_proto__rustc_version-0.2.3//:rustc_version",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "parking_lot_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/proto/3rdparty/crates/BUILD.parking_lot_core-0.6.3.bazel b/proto/3rdparty/crates/BUILD.parking_lot_core-0.6.3.bazel
index 87db1cc..32df662 100644
--- a/proto/3rdparty/crates/BUILD.parking_lot_core-0.6.3.bazel
+++ b/proto/3rdparty/crates/BUILD.parking_lot_core-0.6.3.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "parking_lot_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,201 +42,97 @@
     ],
     version = "0.6.3",
     deps = [
+        "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",
+        "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",
+        "@rules_rust_proto__smallvec-0.6.14//:smallvec",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
             "@rules_rust_proto__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
             "@rules_rust_proto__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
             "@rules_rust_proto__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",  # common dependency
             "@rules_rust_proto__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",  # common dependency
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",  # common dependency
         ],
-        "//conditions:default": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",
-            "@rules_rust_proto__parking_lot_core-0.6.3//:build_script_build",
-            "@rules_rust_proto__smallvec-0.6.14//:smallvec",
-        ],
+        "//conditions:default": [],
     }),
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "parking_lot_core_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -287,29 +141,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.6.3",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__rustc_version-0.2.3//:rustc_version",
-        ],
-    }),
+        "@rules_rust_proto__rustc_version-0.2.3//:rustc_version",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "parking_lot_core_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/proto/3rdparty/crates/BUILD.protobuf-2.8.2.bazel b/proto/3rdparty/crates/BUILD.protobuf-2.8.2.bazel
index ea8f641..be72859 100644
--- a/proto/3rdparty/crates/BUILD.protobuf-2.8.2.bazel
+++ b/proto/3rdparty/crates/BUILD.protobuf-2.8.2.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "protobuf",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "bytes",
         "with-bytes",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "2.8.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",
-            "@rules_rust_proto__protobuf-2.8.2//:build_script_build",
-        ],
-    }),
+        "@rules_rust_proto__bytes-0.4.12//:bytes",
+        "@rules_rust_proto__protobuf-2.8.2//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "protobuf_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "bytes",
         "with-bytes",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "2.8.2",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "protobuf_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/proto/3rdparty/crates/BUILD.protobuf-codegen-2.8.2.bazel b/proto/3rdparty/crates/BUILD.protobuf-codegen-2.8.2.bazel
index 90fbd82..ac8f4e8 100644
--- a/proto/3rdparty/crates/BUILD.protobuf-codegen-2.8.2.bazel
+++ b/proto/3rdparty/crates/BUILD.protobuf-codegen-2.8.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_binary",
@@ -22,56 +20,20 @@
 
 rust_library(
     name = "protobuf_codegen",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,65 +42,26 @@
     ],
     version = "2.8.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__protobuf-2.8.2//:protobuf",
-        ],
-    }),
+        "@rules_rust_proto__protobuf-2.8.2//:protobuf",
+    ],
 )
 
 rust_binary(
     name = "protobuf-bin-gen-rust-do-not-use__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/bin/protobuf-bin-gen-rust-do-not-use.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -148,65 +71,26 @@
     version = "2.8.2",
     deps = [
         ":protobuf_codegen",
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__protobuf-2.8.2//:protobuf",
-        ],
-    }),
+        "@rules_rust_proto__protobuf-2.8.2//:protobuf",
+    ],
 )
 
 rust_binary(
     name = "protoc-gen-rust__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/bin/protoc-gen-rust.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -216,9 +100,6 @@
     version = "2.8.2",
     deps = [
         ":protobuf_codegen",
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__protobuf-2.8.2//:protobuf",
-        ],
-    }),
+        "@rules_rust_proto__protobuf-2.8.2//:protobuf",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.redox_syscall-0.1.57.bazel b/proto/3rdparty/crates/BUILD.redox_syscall-0.1.57.bazel
index 49ad9f2..633d426 100644
--- a/proto/3rdparty/crates/BUILD.redox_syscall-0.1.57.bazel
+++ b/proto/3rdparty/crates/BUILD.redox_syscall-0.1.57.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "syscall",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.57",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.rustc_version-0.2.3.bazel b/proto/3rdparty/crates/BUILD.rustc_version-0.2.3.bazel
index 4c39340..2aa0b25 100644
--- a/proto/3rdparty/crates/BUILD.rustc_version-0.2.3.bazel
+++ b/proto/3rdparty/crates/BUILD.rustc_version-0.2.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "rustc_version",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.2.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__semver-0.9.0//:semver",
-        ],
-    }),
+        "@rules_rust_proto__semver-0.9.0//:semver",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.safemem-0.3.3.bazel b/proto/3rdparty/crates/BUILD.safemem-0.3.3.bazel
index 2ed47dd..3ccb49f 100644
--- a/proto/3rdparty/crates/BUILD.safemem-0.3.3.bazel
+++ b/proto/3rdparty/crates/BUILD.safemem-0.3.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "safemem",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "0.3.3",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.scoped-tls-0.1.2.bazel b/proto/3rdparty/crates/BUILD.scoped-tls-0.1.2.bazel
index ce42033..0f3fa22 100644
--- a/proto/3rdparty/crates/BUILD.scoped-tls-0.1.2.bazel
+++ b/proto/3rdparty/crates/BUILD.scoped-tls-0.1.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "scoped_tls",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.scopeguard-1.1.0.bazel b/proto/3rdparty/crates/BUILD.scopeguard-1.1.0.bazel
index 50125d3..57dddb2 100644
--- a/proto/3rdparty/crates/BUILD.scopeguard-1.1.0.bazel
+++ b/proto/3rdparty/crates/BUILD.scopeguard-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "scopeguard",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.semver-0.9.0.bazel b/proto/3rdparty/crates/BUILD.semver-0.9.0.bazel
index c8e25de..9b16a38 100644
--- a/proto/3rdparty/crates/BUILD.semver-0.9.0.bazel
+++ b/proto/3rdparty/crates/BUILD.semver-0.9.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "semver",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.9.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__semver-parser-0.7.0//:semver_parser",
-        ],
-    }),
+        "@rules_rust_proto__semver-parser-0.7.0//:semver_parser",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.semver-parser-0.7.0.bazel b/proto/3rdparty/crates/BUILD.semver-parser-0.7.0.bazel
index c313595..4c7a81f 100644
--- a/proto/3rdparty/crates/BUILD.semver-parser-0.7.0.bazel
+++ b/proto/3rdparty/crates/BUILD.semver-parser-0.7.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "semver_parser",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.7.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.slab-0.3.0.bazel b/proto/3rdparty/crates/BUILD.slab-0.3.0.bazel
index 3647f60..4546c4e 100644
--- a/proto/3rdparty/crates/BUILD.slab-0.3.0.bazel
+++ b/proto/3rdparty/crates/BUILD.slab-0.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "slab",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.slab-0.4.7.bazel b/proto/3rdparty/crates/BUILD.slab-0.4.7.bazel
index 966930e..31f6995 100644
--- a/proto/3rdparty/crates/BUILD.slab-0.4.7.bazel
+++ b/proto/3rdparty/crates/BUILD.slab-0.4.7.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "slab",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "0.4.7",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__slab-0.4.7//:build_script_build",
-        ],
-    }),
+        "@rules_rust_proto__slab-0.4.7//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "slab_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,29 +79,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.7",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@rules_rust_proto__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "slab_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/proto/3rdparty/crates/BUILD.smallvec-0.6.14.bazel b/proto/3rdparty/crates/BUILD.smallvec-0.6.14.bazel
index 2dfcd1b..29915fb 100644
--- a/proto/3rdparty/crates/BUILD.smallvec-0.6.14.bazel
+++ b/proto/3rdparty/crates/BUILD.smallvec-0.6.14.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "smallvec",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.6.14",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__maybe-uninit-2.0.0//:maybe_uninit",
-        ],
-    }),
+        "@rules_rust_proto__maybe-uninit-2.0.0//:maybe_uninit",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tls-api-0.1.22.bazel b/proto/3rdparty/crates/BUILD.tls-api-0.1.22.bazel
index 76f959a..760dd7e 100644
--- a/proto/3rdparty/crates/BUILD.tls-api-0.1.22.bazel
+++ b/proto/3rdparty/crates/BUILD.tls-api-0.1.22.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tls_api",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.1.22",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__log-0.4.17//:log",
-        ],
-    }),
+        "@rules_rust_proto__log-0.4.17//:log",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tls-api-stub-0.1.22.bazel b/proto/3rdparty/crates/BUILD.tls-api-stub-0.1.22.bazel
index f277610..bf06be3 100644
--- a/proto/3rdparty/crates/BUILD.tls-api-stub-0.1.22.bazel
+++ b/proto/3rdparty/crates/BUILD.tls-api-stub-0.1.22.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tls_api_stub",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.1.22",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",
-            "@rules_rust_proto__void-1.0.2//:void",
-        ],
-    }),
+        "@rules_rust_proto__tls-api-0.1.22//:tls_api",
+        "@rules_rust_proto__void-1.0.2//:void",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-0.1.22.bazel b/proto/3rdparty/crates/BUILD.tokio-0.1.22.bazel
index 52532a1..74449af 100644
--- a/proto/3rdparty/crates/BUILD.tokio-0.1.22.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-0.1.22.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "tokio",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "bytes",
         "codec",
@@ -74,29 +59,8 @@
         "uds",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -105,365 +69,79 @@
     ],
     version = "0.1.22",
     deps = [
+        "@rules_rust_proto__bytes-0.4.12//:bytes",
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__mio-0.6.23//:mio",
+        "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",
+        "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",
+        "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",
+        "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",
+        "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",
+        "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
+        "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",
+        "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",
+        "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",
+        "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",
+        "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",
+        "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",  # common dependency
-            "@rules_rust_proto__futures-0.1.31//:futures",  # common dependency
-            "@rules_rust_proto__mio-0.6.23//:mio",  # common dependency
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",  # common dependency
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",  # common dependency
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",  # common dependency
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",  # common dependency
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",  # common dependency
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",  # common dependency
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",  # common dependency
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",  # common dependency
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",  # common dependency
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",  # common dependency
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",  # common dependency
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",  # common dependency
             "@rules_rust_proto__tokio-uds-0.2.7//:tokio_uds",  # cfg(unix)
         ],
-        "//conditions:default": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__mio-0.6.23//:mio",
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",
-            "@rules_rust_proto__tokio-current-thread-0.1.7//:tokio_current_thread",
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",
-            "@rules_rust_proto__tokio-fs-0.1.7//:tokio_fs",
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",
-            "@rules_rust_proto__tokio-tcp-0.1.4//:tokio_tcp",
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",
-            "@rules_rust_proto__tokio-udp-0.1.6//:tokio_udp",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-codec-0.1.2.bazel b/proto/3rdparty/crates/BUILD.tokio-codec-0.1.2.bazel
index 2f9ca08..e349edf 100644
--- a/proto/3rdparty/crates/BUILD.tokio-codec-0.1.2.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-codec-0.1.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_codec",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.1.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
-        ],
-    }),
+        "@rules_rust_proto__bytes-0.4.12//:bytes",
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-core-0.1.18.bazel b/proto/3rdparty/crates/BUILD.tokio-core-0.1.18.bazel
index 7f051c3..8cb6a4b 100644
--- a/proto/3rdparty/crates/BUILD.tokio-core-0.1.18.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-core-0.1.18.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,19 +41,16 @@
     ],
     version = "0.1.18",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__iovec-0.1.4//:iovec",
-            "@rules_rust_proto__log-0.4.17//:log",
-            "@rules_rust_proto__mio-0.6.23//:mio",
-            "@rules_rust_proto__scoped-tls-0.1.2//:scoped_tls",
-            "@rules_rust_proto__tokio-0.1.22//:tokio",
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",
-            "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",
-        ],
-    }),
+        "@rules_rust_proto__bytes-0.4.12//:bytes",
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__iovec-0.1.4//:iovec",
+        "@rules_rust_proto__log-0.4.17//:log",
+        "@rules_rust_proto__mio-0.6.23//:mio",
+        "@rules_rust_proto__scoped-tls-0.1.2//:scoped_tls",
+        "@rules_rust_proto__tokio-0.1.22//:tokio",
+        "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",
+        "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
+        "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",
+        "@rules_rust_proto__tokio-timer-0.2.13//:tokio_timer",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-current-thread-0.1.7.bazel b/proto/3rdparty/crates/BUILD.tokio-current-thread-0.1.7.bazel
index 10257da..13dbeb1 100644
--- a/proto/3rdparty/crates/BUILD.tokio-current-thread-0.1.7.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-current-thread-0.1.7.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_current_thread",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.1.7",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",
-        ],
-    }),
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-executor-0.1.10.bazel b/proto/3rdparty/crates/BUILD.tokio-executor-0.1.10.bazel
index ce8d2f6..8ffe5b2 100644
--- a/proto/3rdparty/crates/BUILD.tokio-executor-0.1.10.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-executor-0.1.10.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_executor",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.1.10",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__crossbeam-utils-0.7.2//:crossbeam_utils",
-            "@rules_rust_proto__futures-0.1.31//:futures",
-        ],
-    }),
+        "@rules_rust_proto__crossbeam-utils-0.7.2//:crossbeam_utils",
+        "@rules_rust_proto__futures-0.1.31//:futures",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-fs-0.1.7.bazel b/proto/3rdparty/crates/BUILD.tokio-fs-0.1.7.bazel
index 7c1cc3c..de95e6f 100644
--- a/proto/3rdparty/crates/BUILD.tokio-fs-0.1.7.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-fs-0.1.7.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_fs",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.1.7",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
-            "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",
-        ],
-    }),
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
+        "@rules_rust_proto__tokio-threadpool-0.1.18//:tokio_threadpool",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-io-0.1.13.bazel b/proto/3rdparty/crates/BUILD.tokio-io-0.1.13.bazel
index fb62492..e2ba7f2 100644
--- a/proto/3rdparty/crates/BUILD.tokio-io-0.1.13.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-io-0.1.13.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_io",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.1.13",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__log-0.4.17//:log",
-        ],
-    }),
+        "@rules_rust_proto__bytes-0.4.12//:bytes",
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__log-0.4.17//:log",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-reactor-0.1.12.bazel b/proto/3rdparty/crates/BUILD.tokio-reactor-0.1.12.bazel
index 82b40a8..0b2c8a3 100644
--- a/proto/3rdparty/crates/BUILD.tokio-reactor-0.1.12.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-reactor-0.1.12.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_reactor",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,19 +41,16 @@
     ],
     version = "0.1.12",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__crossbeam-utils-0.7.2//:crossbeam_utils",
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__lazy_static-1.4.0//:lazy_static",
-            "@rules_rust_proto__log-0.4.17//:log",
-            "@rules_rust_proto__mio-0.6.23//:mio",
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",
-            "@rules_rust_proto__parking_lot-0.9.0//:parking_lot",
-            "@rules_rust_proto__slab-0.4.7//:slab",
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
-            "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",
-        ],
-    }),
+        "@rules_rust_proto__crossbeam-utils-0.7.2//:crossbeam_utils",
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__lazy_static-1.4.0//:lazy_static",
+        "@rules_rust_proto__log-0.4.17//:log",
+        "@rules_rust_proto__mio-0.6.23//:mio",
+        "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",
+        "@rules_rust_proto__parking_lot-0.9.0//:parking_lot",
+        "@rules_rust_proto__slab-0.4.7//:slab",
+        "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",
+        "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
+        "@rules_rust_proto__tokio-sync-0.1.8//:tokio_sync",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-sync-0.1.8.bazel b/proto/3rdparty/crates/BUILD.tokio-sync-0.1.8.bazel
index c3e4e3d..120beb8 100644
--- a/proto/3rdparty/crates/BUILD.tokio-sync-0.1.8.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-sync-0.1.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_sync",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.1.8",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__fnv-1.0.7//:fnv",
-            "@rules_rust_proto__futures-0.1.31//:futures",
-        ],
-    }),
+        "@rules_rust_proto__fnv-1.0.7//:fnv",
+        "@rules_rust_proto__futures-0.1.31//:futures",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-tcp-0.1.4.bazel b/proto/3rdparty/crates/BUILD.tokio-tcp-0.1.4.bazel
index 5310d4f..4604910 100644
--- a/proto/3rdparty/crates/BUILD.tokio-tcp-0.1.4.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-tcp-0.1.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_tcp",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,14 +41,11 @@
     ],
     version = "0.1.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__iovec-0.1.4//:iovec",
-            "@rules_rust_proto__mio-0.6.23//:mio",
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",
-        ],
-    }),
+        "@rules_rust_proto__bytes-0.4.12//:bytes",
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__iovec-0.1.4//:iovec",
+        "@rules_rust_proto__mio-0.6.23//:mio",
+        "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
+        "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-threadpool-0.1.18.bazel b/proto/3rdparty/crates/BUILD.tokio-threadpool-0.1.18.bazel
index 1d4cdf6..1b2b6fa 100644
--- a/proto/3rdparty/crates/BUILD.tokio-threadpool-0.1.18.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-threadpool-0.1.18.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_threadpool",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,17 +41,14 @@
     ],
     version = "0.1.18",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__crossbeam-deque-0.7.4//:crossbeam_deque",
-            "@rules_rust_proto__crossbeam-queue-0.2.3//:crossbeam_queue",
-            "@rules_rust_proto__crossbeam-utils-0.7.2//:crossbeam_utils",
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__lazy_static-1.4.0//:lazy_static",
-            "@rules_rust_proto__log-0.4.17//:log",
-            "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",
-            "@rules_rust_proto__slab-0.4.7//:slab",
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",
-        ],
-    }),
+        "@rules_rust_proto__crossbeam-deque-0.7.4//:crossbeam_deque",
+        "@rules_rust_proto__crossbeam-queue-0.2.3//:crossbeam_queue",
+        "@rules_rust_proto__crossbeam-utils-0.7.2//:crossbeam_utils",
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__lazy_static-1.4.0//:lazy_static",
+        "@rules_rust_proto__log-0.4.17//:log",
+        "@rules_rust_proto__num_cpus-1.15.0//:num_cpus",
+        "@rules_rust_proto__slab-0.4.7//:slab",
+        "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-timer-0.1.2.bazel b/proto/3rdparty/crates/BUILD.tokio-timer-0.1.2.bazel
index 01255ad..06bd4d4 100644
--- a/proto/3rdparty/crates/BUILD.tokio-timer-0.1.2.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-timer-0.1.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_timer",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.1.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__slab-0.3.0//:slab",
-        ],
-    }),
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__slab-0.3.0//:slab",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-timer-0.2.13.bazel b/proto/3rdparty/crates/BUILD.tokio-timer-0.2.13.bazel
index 7752edc..182152d 100644
--- a/proto/3rdparty/crates/BUILD.tokio-timer-0.2.13.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-timer-0.2.13.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_timer",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,12 +41,9 @@
     ],
     version = "0.2.13",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__crossbeam-utils-0.7.2//:crossbeam_utils",
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__slab-0.4.7//:slab",
-            "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",
-        ],
-    }),
+        "@rules_rust_proto__crossbeam-utils-0.7.2//:crossbeam_utils",
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__slab-0.4.7//:slab",
+        "@rules_rust_proto__tokio-executor-0.1.10//:tokio_executor",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-tls-api-0.1.22.bazel b/proto/3rdparty/crates/BUILD.tokio-tls-api-0.1.22.bazel
index 8d1a536..c096265 100644
--- a/proto/3rdparty/crates/BUILD.tokio-tls-api-0.1.22.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-tls-api-0.1.22.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_tls_api",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.1.22",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__tls-api-0.1.22//:tls_api",
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
-        ],
-    }),
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__tls-api-0.1.22//:tls_api",
+        "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-udp-0.1.6.bazel b/proto/3rdparty/crates/BUILD.tokio-udp-0.1.6.bazel
index 80ee5a5..e888408 100644
--- a/proto/3rdparty/crates/BUILD.tokio-udp-0.1.6.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-udp-0.1.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_udp",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,15 +41,12 @@
     ],
     version = "0.1.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__log-0.4.17//:log",
-            "@rules_rust_proto__mio-0.6.23//:mio",
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",
-        ],
-    }),
+        "@rules_rust_proto__bytes-0.4.12//:bytes",
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__log-0.4.17//:log",
+        "@rules_rust_proto__mio-0.6.23//:mio",
+        "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",
+        "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
+        "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-uds-0.1.7.bazel b/proto/3rdparty/crates/BUILD.tokio-uds-0.1.7.bazel
index 7925f60..a1814bf 100644
--- a/proto/3rdparty/crates/BUILD.tokio-uds-0.1.7.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-uds-0.1.7.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_uds",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,17 +41,14 @@
     ],
     version = "0.1.7",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__iovec-0.1.4//:iovec",
-            "@rules_rust_proto__libc-0.2.139//:libc",
-            "@rules_rust_proto__log-0.3.9//:log",
-            "@rules_rust_proto__mio-0.6.23//:mio",
-            "@rules_rust_proto__mio-uds-0.6.8//:mio_uds",
-            "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
-        ],
-    }),
+        "@rules_rust_proto__bytes-0.4.12//:bytes",
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__iovec-0.1.4//:iovec",
+        "@rules_rust_proto__libc-0.2.139//:libc",
+        "@rules_rust_proto__log-0.3.9//:log",
+        "@rules_rust_proto__mio-0.6.23//:mio",
+        "@rules_rust_proto__mio-uds-0.6.8//:mio_uds",
+        "@rules_rust_proto__tokio-core-0.1.18//:tokio_core",
+        "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.tokio-uds-0.2.7.bazel b/proto/3rdparty/crates/BUILD.tokio-uds-0.2.7.bazel
index df4fab9..de0c29d 100644
--- a/proto/3rdparty/crates/BUILD.tokio-uds-0.2.7.bazel
+++ b/proto/3rdparty/crates/BUILD.tokio-uds-0.2.7.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tokio_uds",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,18 +41,15 @@
     ],
     version = "0.2.7",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__bytes-0.4.12//:bytes",
-            "@rules_rust_proto__futures-0.1.31//:futures",
-            "@rules_rust_proto__iovec-0.1.4//:iovec",
-            "@rules_rust_proto__libc-0.2.139//:libc",
-            "@rules_rust_proto__log-0.4.17//:log",
-            "@rules_rust_proto__mio-0.6.23//:mio",
-            "@rules_rust_proto__mio-uds-0.6.8//:mio_uds",
-            "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",
-            "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
-            "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",
-        ],
-    }),
+        "@rules_rust_proto__bytes-0.4.12//:bytes",
+        "@rules_rust_proto__futures-0.1.31//:futures",
+        "@rules_rust_proto__iovec-0.1.4//:iovec",
+        "@rules_rust_proto__libc-0.2.139//:libc",
+        "@rules_rust_proto__log-0.4.17//:log",
+        "@rules_rust_proto__mio-0.6.23//:mio",
+        "@rules_rust_proto__mio-uds-0.6.8//:mio_uds",
+        "@rules_rust_proto__tokio-codec-0.1.2//:tokio_codec",
+        "@rules_rust_proto__tokio-io-0.1.13//:tokio_io",
+        "@rules_rust_proto__tokio-reactor-0.1.12//:tokio_reactor",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.unix_socket-0.5.0.bazel b/proto/3rdparty/crates/BUILD.unix_socket-0.5.0.bazel
index 21f62e5..6df9929 100644
--- a/proto/3rdparty/crates/BUILD.unix_socket-0.5.0.bazel
+++ b/proto/3rdparty/crates/BUILD.unix_socket-0.5.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "unix_socket",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.5.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",
-            "@rules_rust_proto__libc-0.2.139//:libc",
-        ],
-    }),
+        "@rules_rust_proto__cfg-if-0.1.10//:cfg_if",
+        "@rules_rust_proto__libc-0.2.139//:libc",
+    ],
 )
diff --git a/proto/3rdparty/crates/BUILD.void-1.0.2.bazel b/proto/3rdparty/crates/BUILD.void-1.0.2.bazel
index b3ee6e5..1c6e1c3 100644
--- a/proto/3rdparty/crates/BUILD.void-1.0.2.bazel
+++ b/proto/3rdparty/crates/BUILD.void-1.0.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "void",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "1.0.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.winapi-0.2.8.bazel b/proto/3rdparty/crates/BUILD.winapi-0.2.8.bazel
index 6daaa25..d6db21a 100644
--- a/proto/3rdparty/crates/BUILD.winapi-0.2.8.bazel
+++ b/proto/3rdparty/crates/BUILD.winapi-0.2.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "winapi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.2.8",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.winapi-0.3.9.bazel b/proto/3rdparty/crates/BUILD.winapi-0.3.9.bazel
index 5798c3e..7fbfdba 100644
--- a/proto/3rdparty/crates/BUILD.winapi-0.3.9.bazel
+++ b/proto/3rdparty/crates/BUILD.winapi-0.3.9.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "winapi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "errhandlingapi",
         "handleapi",
@@ -64,29 +45,8 @@
         "ws2tcpip",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -95,33 +55,13 @@
     ],
     version = "0.3.9",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__winapi-0.3.9//:build_script_build",
-        ],
-    }),
+        "@rules_rust_proto__winapi-0.3.9//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "errhandlingapi",
         "handleapi",
@@ -141,32 +81,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -175,28 +97,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.9",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/proto/3rdparty/crates/BUILD.winapi-build-0.1.1.bazel b/proto/3rdparty/crates/BUILD.winapi-build-0.1.1.bazel
index 14e0ee3..ed43fe7 100644
--- a/proto/3rdparty/crates/BUILD.winapi-build-0.1.1.bazel
+++ b/proto/3rdparty/crates/BUILD.winapi-build-0.1.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "build",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/proto/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel b/proto/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
index 95a05aa..2240eea 100644
--- a/proto/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
+++ b/proto/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_i686_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__winapi-i686-pc-windows-gnu-0.4.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_proto__winapi-i686-pc-windows-gnu-0.4.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-i686-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-i686-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/proto/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel b/proto/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
index c9086b0..dfeff0a 100644
--- a/proto/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
+++ b/proto/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_x86_64_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__winapi-x86_64-pc-windows-gnu-0.4.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_proto__winapi-x86_64-pc-windows-gnu-0.4.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-x86_64-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-x86_64-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/proto/3rdparty/crates/BUILD.ws2_32-sys-0.2.1.bazel b/proto/3rdparty/crates/BUILD.ws2_32-sys-0.2.1.bazel
index 355d172..648430e 100644
--- a/proto/3rdparty/crates/BUILD.ws2_32-sys-0.2.1.bazel
+++ b/proto/3rdparty/crates/BUILD.ws2_32-sys-0.2.1.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//proto/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "ws2_32",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.2.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__winapi-0.2.8//:winapi",
-            "@rules_rust_proto__ws2_32-sys-0.2.1//:build_script_build",
-        ],
-    }),
+        "@rules_rust_proto__winapi-0.2.8//:winapi",
+        "@rules_rust_proto__ws2_32-sys-0.2.1//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "ws2_32-sys_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,29 +72,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.1",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_proto__winapi-build-0.1.1//:build",
-        ],
-    }),
+        "@rules_rust_proto__winapi-build-0.1.1//:build",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "ws2_32-sys_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel
index 9b4cfad..efa1d61 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "aho_corasick",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.7.20",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__memchr-2.5.0//:memchr",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__memchr-2.5.0//:memchr",
+    ],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.anyhow-1.0.68.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.anyhow-1.0.68.bazel
index 34e4323..b0570d2 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.anyhow-1.0.68.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.anyhow-1.0.68.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "anyhow",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "1.0.68",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__anyhow-1.0.68//:build_script_build",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__anyhow-1.0.68//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "anyhow_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.68",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "anyhow_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.atty-0.2.14.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.atty-0.2.14.bazel
index de22d86..ba46c51 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.atty-0.2.14.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.atty-0.2.14.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "atty",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.2.14",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@rules_rust_rust_analyzer__libc-0.2.139//:libc",  # cfg(unix)
         ],
@@ -146,7 +107,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@rules_rust_rust_analyzer__libc-0.2.139//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.autocfg-1.1.0.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.autocfg-1.1.0.bazel
index d2dc56d..451c2e3 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.autocfg-1.1.0.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.autocfg-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "autocfg",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.bazel
index 5b13399..6ec2cca 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.bazel
@@ -13,21 +13,15 @@
         "cargo-bazel.json",
         "crates.bzl",
         "defs.bzl",
-    ] + glob(
-        include = ["*.bazel"],
-        exclude = [],
-    ),
+    ] + glob(["*.bazel"]),
 )
 
 filegroup(
     name = "srcs",
-    srcs = glob(
-        include = [
-            "*.bazel",
-            "*.bzl",
-        ],
-        exclude = [],
-    ),
+    srcs = glob([
+        "*.bazel",
+        "*.bzl",
+    ]),
 )
 
 # Workspace Member Dependencies
@@ -72,10 +66,3 @@
     actual = "@rules_rust_rust_analyzer__serde_json-1.0.91//:serde_json",
     tags = ["manual"],
 )
-
-# Binaries
-alias(
-    name = "clap__stdio-fixture",
-    actual = "@rules_rust_rust_analyzer__clap-3.2.23//:stdio-fixture__bin",
-    tags = ["manual"],
-)
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.bitflags-1.3.2.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
index a3c4e71..fef9f80 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "bitflags",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "1.3.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
index b0ab97e..4505256 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cfg_if",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.clap-3.2.23.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.clap-3.2.23.bazel
index c70ae2a..4dae7ec 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.clap-3.2.23.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.clap-3.2.23.bazel
@@ -6,11 +6,8 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
-    "rust_binary",
     "rust_library",
 )
 
@@ -22,30 +19,17 @@
 
 rust_library(
     name = "clap",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "atty",
         "clap_derive",
@@ -60,30 +44,11 @@
         "termcolor",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__clap_derive-3.2.18//:clap_derive",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@rules_rust_rust_analyzer__clap_derive-3.2.18//:clap_derive",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -92,103 +57,13 @@
     ],
     version = "3.2.23",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__atty-0.2.14//:atty",
-            "@rules_rust_rust_analyzer__bitflags-1.3.2//:bitflags",
-            "@rules_rust_rust_analyzer__clap_lex-0.2.4//:clap_lex",
-            "@rules_rust_rust_analyzer__indexmap-1.9.2//:indexmap",
-            "@rules_rust_rust_analyzer__once_cell-1.17.0//:once_cell",
-            "@rules_rust_rust_analyzer__strsim-0.10.0//:strsim",
-            "@rules_rust_rust_analyzer__termcolor-1.1.3//:termcolor",
-            "@rules_rust_rust_analyzer__textwrap-0.16.0//:textwrap",
-        ],
-    }),
-)
-
-rust_binary(
-    name = "stdio-fixture__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    compile_data = glob(
-        include = ["**"],
-        exclude = [
-            "**/* *",
-            "BUILD.bazel",
-            "BUILD",
-            "WORKSPACE.bazel",
-            "WORKSPACE",
-        ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "atty",
-        "clap_derive",
-        "color",
-        "default",
-        "derive",
-        "env",
-        "once_cell",
-        "std",
-        "strsim",
-        "suggestions",
-        "termcolor",
+        "@rules_rust_rust_analyzer__atty-0.2.14//:atty",
+        "@rules_rust_rust_analyzer__bitflags-1.3.2//:bitflags",
+        "@rules_rust_rust_analyzer__clap_lex-0.2.4//:clap_lex",
+        "@rules_rust_rust_analyzer__indexmap-1.9.2//:indexmap",
+        "@rules_rust_rust_analyzer__once_cell-1.17.0//:once_cell",
+        "@rules_rust_rust_analyzer__strsim-0.10.0//:strsim",
+        "@rules_rust_rust_analyzer__termcolor-1.1.3//:termcolor",
+        "@rules_rust_rust_analyzer__textwrap-0.16.0//:textwrap",
     ],
-    crate_root = "src/bin/stdio-fixture.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__clap_derive-3.2.18//:clap_derive",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
-    tags = [
-        "cargo-bazel",
-        "manual",
-        "noclippy",
-        "norustfmt",
-    ],
-    version = "3.2.23",
-    deps = [
-        ":clap",
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__atty-0.2.14//:atty",
-            "@rules_rust_rust_analyzer__bitflags-1.3.2//:bitflags",
-            "@rules_rust_rust_analyzer__clap_lex-0.2.4//:clap_lex",
-            "@rules_rust_rust_analyzer__indexmap-1.9.2//:indexmap",
-            "@rules_rust_rust_analyzer__once_cell-1.17.0//:once_cell",
-            "@rules_rust_rust_analyzer__strsim-0.10.0//:strsim",
-            "@rules_rust_rust_analyzer__termcolor-1.1.3//:termcolor",
-            "@rules_rust_rust_analyzer__textwrap-0.16.0//:textwrap",
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.clap_derive-3.2.18.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.clap_derive-3.2.18.bazel
index 3c2d46a..a00b958 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.clap_derive-3.2.18.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.clap_derive-3.2.18.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,57 +19,21 @@
 
 rust_proc_macro(
     name = "clap_derive",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,13 +42,10 @@
     ],
     version = "3.2.18",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__heck-0.4.0//:heck",
-            "@rules_rust_rust_analyzer__proc-macro-error-1.0.4//:proc_macro_error",
-            "@rules_rust_rust_analyzer__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_rust_analyzer__quote-1.0.23//:quote",
-            "@rules_rust_rust_analyzer__syn-1.0.107//:syn",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__heck-0.4.0//:heck",
+        "@rules_rust_rust_analyzer__proc-macro-error-1.0.4//:proc_macro_error",
+        "@rules_rust_rust_analyzer__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_rust_analyzer__quote-1.0.23//:quote",
+        "@rules_rust_rust_analyzer__syn-1.0.107//:syn",
+    ],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.clap_lex-0.2.4.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.clap_lex-0.2.4.bazel
index 69a2211..b6d9348 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.clap_lex-0.2.4.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.clap_lex-0.2.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "clap_lex",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.2.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__os_str_bytes-6.4.1//:os_str_bytes",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__os_str_bytes-6.4.1//:os_str_bytes",
+    ],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.either-1.8.0.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.either-1.8.0.bazel
index cb15e04..3132bd3 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.either-1.8.0.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.either-1.8.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "either",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "use_std",
-    ],
+    ),
+    crate_features = ["use_std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "1.8.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.env_logger-0.9.3.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.env_logger-0.9.3.bazel
index 743f131..b467c74 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.env_logger-0.9.3.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.env_logger-0.9.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "env_logger",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "atty",
         "default",
@@ -53,29 +38,8 @@
         "termcolor",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,13 +48,10 @@
     ],
     version = "0.9.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__atty-0.2.14//:atty",
-            "@rules_rust_rust_analyzer__humantime-2.1.0//:humantime",
-            "@rules_rust_rust_analyzer__log-0.4.17//:log",
-            "@rules_rust_rust_analyzer__regex-1.7.0//:regex",
-            "@rules_rust_rust_analyzer__termcolor-1.1.3//:termcolor",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__atty-0.2.14//:atty",
+        "@rules_rust_rust_analyzer__humantime-2.1.0//:humantime",
+        "@rules_rust_rust_analyzer__log-0.4.17//:log",
+        "@rules_rust_rust_analyzer__regex-1.7.0//:regex",
+        "@rules_rust_rust_analyzer__termcolor-1.1.3//:termcolor",
+    ],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.hashbrown-0.12.3.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.hashbrown-0.12.3.bazel
index cd30434..4371780 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.hashbrown-0.12.3.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.hashbrown-0.12.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hashbrown",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "raw",
-    ],
+    ),
+    crate_features = ["raw"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.12.3",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.heck-0.4.0.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.heck-0.4.0.bazel
index 857719f..55fde9a 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.heck-0.4.0.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.heck-0.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "heck",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.4.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.hermit-abi-0.1.19.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.hermit-abi-0.1.19.bazel
index 0fbf449..e8ea8c3 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.hermit-abi-0.1.19.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.hermit-abi-0.1.19.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hermit_abi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.1.19",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__libc-0.2.139//:libc",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__libc-0.2.139//:libc",
+    ],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.humantime-2.1.0.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.humantime-2.1.0.bazel
index 548382c..4f263cc 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.humantime-2.1.0.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.humantime-2.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "humantime",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "2.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.indexmap-1.9.2.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.indexmap-1.9.2.bazel
index c26045f..e5dce34 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.indexmap-1.9.2.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.indexmap-1.9.2.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "indexmap",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,69 +43,29 @@
     ],
     version = "1.9.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__hashbrown-0.12.3//:hashbrown",
-            "@rules_rust_rust_analyzer__indexmap-1.9.2//:build_script_build",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__hashbrown-0.12.3//:hashbrown",
+        "@rules_rust_rust_analyzer__indexmap-1.9.2//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "indexmap_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["std"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,29 +74,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.9.2",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "indexmap_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.itertools-0.10.5.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.itertools-0.10.5.bazel
index d2062c1..cb6f9ea 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.itertools-0.10.5.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.itertools-0.10.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "itertools",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "use_alloc",
         "use_std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,6 @@
     ],
     version = "0.10.5",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__either-1.8.0//:either",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__either-1.8.0//:either",
+    ],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.itoa-1.0.5.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.itoa-1.0.5.bazel
index eea9551..1be57d3 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.itoa-1.0.5.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.itoa-1.0.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "itoa",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.5",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.libc-0.2.139.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.libc-0.2.139.bazel
index 12097c8..5462969 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.libc-0.2.139.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.libc-0.2.139.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "libc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.2.139",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__libc-0.2.139//:build_script_build",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__libc-0.2.139//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "libc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.139",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "libc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.log-0.4.17.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.log-0.4.17.bazel
index e7b26cf..e69673a 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.log-0.4.17.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.log-0.4.17.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "log",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,69 +43,29 @@
     ],
     version = "0.4.17",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__cfg-if-1.0.0//:cfg_if",
-            "@rules_rust_rust_analyzer__log-0.4.17//:build_script_build",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__cfg-if-1.0.0//:cfg_if",
+        "@rules_rust_rust_analyzer__log-0.4.17//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "log_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["std"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,28 +74,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.17",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "log_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.memchr-2.5.0.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.memchr-2.5.0.bazel
index 72b4e17..dda25f5 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.memchr-2.5.0.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.memchr-2.5.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "memchr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "2.5.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__memchr-2.5.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__memchr-2.5.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "memchr_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "2.5.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "memchr_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.once_cell-1.17.0.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.once_cell-1.17.0.bazel
index 1cfc1b8..083f4ea 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.once_cell-1.17.0.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.once_cell-1.17.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "once_cell",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
@@ -52,29 +37,8 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,4 @@
         "norustfmt",
     ],
     version = "1.17.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.os_str_bytes-6.4.1.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.os_str_bytes-6.4.1.bazel
index f7a1ba5..5a67a8d 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.os_str_bytes-6.4.1.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.os_str_bytes-6.4.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "os_str_bytes",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "raw_os_str",
-    ],
+    ),
+    crate_features = ["raw_os_str"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "6.4.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.proc-macro-error-1.0.4.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.proc-macro-error-1.0.4.bazel
index 602c3d6..434c145 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.proc-macro-error-1.0.4.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.proc-macro-error-1.0.4.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,60 +20,28 @@
 
 rust_library(
     name = "proc_macro_error",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "syn",
         "syn-error",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__proc-macro-error-attr-1.0.4//:proc_macro_error_attr",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@rules_rust_rust_analyzer__proc-macro-error-attr-1.0.4//:proc_macro_error_attr",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -88,36 +50,16 @@
     ],
     version = "1.0.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__proc-macro-error-1.0.4//:build_script_build",
-            "@rules_rust_rust_analyzer__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_rust_analyzer__quote-1.0.23//:quote",
-            "@rules_rust_rust_analyzer__syn-1.0.107//:syn",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__proc-macro-error-1.0.4//:build_script_build",
+        "@rules_rust_rust_analyzer__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_rust_analyzer__quote-1.0.23//:quote",
+        "@rules_rust_rust_analyzer__syn-1.0.107//:syn",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "proc-macro-error_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "syn",
@@ -129,32 +71,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -163,29 +87,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.4",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__version_check-0.9.4//:version_check",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__version_check-0.9.4//:version_check",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "proc-macro-error_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.proc-macro-error-attr-1.0.4.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.proc-macro-error-attr-1.0.4.bazel
index c490cd1..e0aa6a6 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.proc-macro-error-attr-1.0.4.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.proc-macro-error-attr-1.0.4.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -26,56 +20,20 @@
 
 rust_proc_macro(
     name = "proc_macro_error_attr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,69 +42,29 @@
     ],
     version = "1.0.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__proc-macro-error-attr-1.0.4//:build_script_build",
-            "@rules_rust_rust_analyzer__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_rust_analyzer__quote-1.0.23//:quote",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__proc-macro-error-attr-1.0.4//:build_script_build",
+        "@rules_rust_rust_analyzer__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_rust_analyzer__quote-1.0.23//:quote",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "proc-macro-error-attr_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -155,29 +73,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.4",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__version_check-0.9.4//:version_check",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__version_check-0.9.4//:version_check",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "proc-macro-error-attr_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel
index bb5eacd..b2f2226 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "proc_macro2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "1.0.49",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__proc-macro2-1.0.49//:build_script_build",
-            "@rules_rust_rust_analyzer__unicode-ident-1.0.6//:unicode_ident",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__proc-macro2-1.0.49//:build_script_build",
+        "@rules_rust_rust_analyzer__unicode-ident-1.0.6//:unicode_ident",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "proc-macro2_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.49",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "proc-macro2_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.quote-1.0.23.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.quote-1.0.23.bazel
index e1515b2..b911f19 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.quote-1.0.23.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.quote-1.0.23.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "quote",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "1.0.23",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_rust_analyzer__quote-1.0.23//:build_script_build",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_rust_analyzer__quote-1.0.23//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "quote_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.23",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "quote_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.regex-1.7.0.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.regex-1.7.0.bazel
index d44656b..d01115f 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.regex-1.7.0.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.regex-1.7.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "regex",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "aho-corasick",
         "memchr",
@@ -56,29 +41,8 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,11 +51,8 @@
     ],
     version = "1.7.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__aho-corasick-0.7.20//:aho_corasick",
-            "@rules_rust_rust_analyzer__memchr-2.5.0//:memchr",
-            "@rules_rust_rust_analyzer__regex-syntax-0.6.28//:regex_syntax",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__aho-corasick-0.7.20//:aho_corasick",
+        "@rules_rust_rust_analyzer__memchr-2.5.0//:memchr",
+        "@rules_rust_rust_analyzer__regex-syntax-0.6.28//:regex_syntax",
+    ],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel
index 4076384..e2514f0 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "regex_syntax",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.6.28",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.ryu-1.0.12.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.ryu-1.0.12.bazel
index ef37ff2..85bb435 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.ryu-1.0.12.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.ryu-1.0.12.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "ryu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.12",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.serde-1.0.152.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.serde-1.0.152.bazel
index 9e95d66..a3316ea 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.serde-1.0.152.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.serde-1.0.152.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "serde",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "derive",
@@ -57,30 +38,11 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__serde_derive-1.0.152//:serde_derive",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@rules_rust_rust_analyzer__serde_derive-1.0.152//:serde_derive",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -89,33 +51,13 @@
     ],
     version = "1.0.152",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__serde-1.0.152//:build_script_build",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__serde-1.0.152//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "serde_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "derive",
@@ -128,32 +70,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -162,28 +86,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.152",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "serde_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.serde_derive-1.0.152.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.serde_derive-1.0.152.bazel
index c8b46db..332fccc 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.serde_derive-1.0.152.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.serde_derive-1.0.152.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -26,57 +20,21 @@
 
 rust_proc_macro(
     name = "serde_derive",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,71 +43,31 @@
     ],
     version = "1.0.152",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_rust_analyzer__quote-1.0.23//:quote",
-            "@rules_rust_rust_analyzer__serde_derive-1.0.152//:build_script_build",
-            "@rules_rust_rust_analyzer__syn-1.0.107//:syn",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_rust_analyzer__quote-1.0.23//:quote",
+        "@rules_rust_rust_analyzer__serde_derive-1.0.152//:build_script_build",
+        "@rules_rust_rust_analyzer__syn-1.0.107//:syn",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "serde_derive_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["default"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +76,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.152",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "serde_derive_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.serde_json-1.0.91.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.serde_json-1.0.91.bazel
index a79ecdc..3a5137e 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.serde_json-1.0.91.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.serde_json-1.0.91.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "serde_json",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,36 +46,16 @@
     ],
     version = "1.0.91",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__itoa-1.0.5//:itoa",
-            "@rules_rust_rust_analyzer__ryu-1.0.12//:ryu",
-            "@rules_rust_rust_analyzer__serde-1.0.152//:serde",
-            "@rules_rust_rust_analyzer__serde_json-1.0.91//:build_script_build",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__itoa-1.0.5//:itoa",
+        "@rules_rust_rust_analyzer__ryu-1.0.12//:ryu",
+        "@rules_rust_rust_analyzer__serde-1.0.152//:serde",
+        "@rules_rust_rust_analyzer__serde_json-1.0.91//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "serde_json_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -126,32 +66,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -160,28 +82,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.91",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "serde_json_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.strsim-0.10.0.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.strsim-0.10.0.bazel
index 7a0cded..c35eb0b 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.strsim-0.10.0.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.strsim-0.10.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "strsim",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.10.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.syn-1.0.107.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.syn-1.0.107.bazel
index 46cd45f..e9e4fbe 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.syn-1.0.107.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.syn-1.0.107.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "syn",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "clone-impls",
         "default",
@@ -61,29 +42,8 @@
         "quote",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -92,36 +52,16 @@
     ],
     version = "1.0.107",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_rust_analyzer__quote-1.0.23//:quote",
-            "@rules_rust_rust_analyzer__syn-1.0.107//:build_script_build",
-            "@rules_rust_rust_analyzer__unicode-ident-1.0.6//:unicode_ident",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_rust_analyzer__quote-1.0.23//:quote",
+        "@rules_rust_rust_analyzer__syn-1.0.107//:build_script_build",
+        "@rules_rust_rust_analyzer__unicode-ident-1.0.6//:unicode_ident",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "syn_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "clone-impls",
         "default",
@@ -138,32 +78,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -172,28 +94,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.107",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "syn_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.termcolor-1.1.3.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.termcolor-1.1.3.bazel
index af6e575..79edb1a 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.termcolor-1.1.3.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.termcolor-1.1.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "termcolor",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "1.1.3",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@rules_rust_rust_analyzer__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@rules_rust_rust_analyzer__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.textwrap-0.16.0.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.textwrap-0.16.0.bazel
index c1993c7..f1acba9 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.textwrap-0.16.0.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.textwrap-0.16.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "textwrap",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.16.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel
index 364c4dd..19dc5e1 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "unicode_ident",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.6",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.version_check-0.9.4.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.version_check-0.9.4.bazel
index 4e12fb6..dd512fb 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.version_check-0.9.4.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.version_check-0.9.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "version_check",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.9.4",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-0.3.9.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-0.3.9.bazel
index 68b6342..5fbea80 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-0.3.9.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-0.3.9.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "winapi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "consoleapi",
         "errhandlingapi",
@@ -64,29 +45,8 @@
         "winnt",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -95,33 +55,13 @@
     ],
     version = "0.3.9",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__winapi-0.3.9//:build_script_build",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__winapi-0.3.9//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "consoleapi",
         "errhandlingapi",
@@ -141,32 +81,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -175,28 +97,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.9",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
index 441622d..7ef4da0 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_i686_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__winapi-i686-pc-windows-gnu-0.4.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__winapi-i686-pc-windows-gnu-0.4.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-i686-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-i686-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel
index 947fda9..441af10 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "winapi_util",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.1.5",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@rules_rust_rust_analyzer__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@rules_rust_rust_analyzer__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel b/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
index 16fae46..c0ad0c6 100644
--- a/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
+++ b/tools/rust_analyzer/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//tools/rust_analyzer/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_x86_64_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_rust_analyzer__winapi-x86_64-pc-windows-gnu-0.4.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_rust_analyzer__winapi-x86_64-pc-windows-gnu-0.4.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-x86_64-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-x86_64-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/util/import/3rdparty/crates/BUILD.aho-corasick-0.7.15.bazel b/util/import/3rdparty/crates/BUILD.aho-corasick-0.7.15.bazel
index aa13e7d..bc40998 100644
--- a/util/import/3rdparty/crates/BUILD.aho-corasick-0.7.15.bazel
+++ b/util/import/3rdparty/crates/BUILD.aho-corasick-0.7.15.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "aho_corasick",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.7.15",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_util_import__memchr-2.5.0//:memchr",
-        ],
-    }),
+        "@rules_rust_util_import__memchr-2.5.0//:memchr",
+    ],
 )
diff --git a/util/import/3rdparty/crates/BUILD.bazel b/util/import/3rdparty/crates/BUILD.bazel
index 5b7de6f..36d3718 100644
--- a/util/import/3rdparty/crates/BUILD.bazel
+++ b/util/import/3rdparty/crates/BUILD.bazel
@@ -13,21 +13,15 @@
         "cargo-bazel.json",
         "crates.bzl",
         "defs.bzl",
-    ] + glob(
-        include = ["*.bazel"],
-        exclude = [],
-    ),
+    ] + glob(["*.bazel"]),
 )
 
 filegroup(
     name = "srcs",
-    srcs = glob(
-        include = [
-            "*.bazel",
-            "*.bzl",
-        ],
-        exclude = [],
-    ),
+    srcs = glob([
+        "*.bazel",
+        "*.bzl",
+    ]),
 )
 
 # Workspace Member Dependencies
diff --git a/util/import/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel b/util/import/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
index e8a616a..7c24fe3 100644
--- a/util/import/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
+++ b/util/import/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cfg_if",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/util/import/3rdparty/crates/BUILD.env_logger-0.8.4.bazel b/util/import/3rdparty/crates/BUILD.env_logger-0.8.4.bazel
index ffb21a8..cd2da8b 100644
--- a/util/import/3rdparty/crates/BUILD.env_logger-0.8.4.bazel
+++ b/util/import/3rdparty/crates/BUILD.env_logger-0.8.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "env_logger",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "regex",
-    ],
+    ),
+    crate_features = ["regex"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,10 +42,7 @@
     ],
     version = "0.8.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_util_import__log-0.4.17//:log",
-            "@rules_rust_util_import__regex-1.4.6//:regex",
-        ],
-    }),
+        "@rules_rust_util_import__log-0.4.17//:log",
+        "@rules_rust_util_import__regex-1.4.6//:regex",
+    ],
 )
diff --git a/util/import/3rdparty/crates/BUILD.getrandom-0.2.8.bazel b/util/import/3rdparty/crates/BUILD.getrandom-0.2.8.bazel
index 7b6cee5..01c2f5a 100644
--- a/util/import/3rdparty/crates/BUILD.getrandom-0.2.8.bazel
+++ b/util/import/3rdparty/crates/BUILD.getrandom-0.2.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "getrandom",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,89 +41,68 @@
     ],
     version = "0.2.8",
     deps = [
+        "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__wasi-0.11.0-wasi-snapshot-preview1//:wasi",  # cfg(target_os = "wasi")
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_util_import__libc-0.2.139//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/util/import/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel b/util/import/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel
index 9f47e14..567b898 100644
--- a/util/import/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel
+++ b/util/import/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "lazy_static",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.4.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/util/import/3rdparty/crates/BUILD.libc-0.2.139.bazel b/util/import/3rdparty/crates/BUILD.libc-0.2.139.bazel
index 3002eb1..1972a70 100644
--- a/util/import/3rdparty/crates/BUILD.libc-0.2.139.bazel
+++ b/util/import/3rdparty/crates/BUILD.libc-0.2.139.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "libc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.2.139",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_util_import__libc-0.2.139//:build_script_build",
-        ],
-    }),
+        "@rules_rust_util_import__libc-0.2.139//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "libc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.139",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "libc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/util/import/3rdparty/crates/BUILD.log-0.4.17.bazel b/util/import/3rdparty/crates/BUILD.log-0.4.17.bazel
index e472495..48f9ec3 100644
--- a/util/import/3rdparty/crates/BUILD.log-0.4.17.bazel
+++ b/util/import/3rdparty/crates/BUILD.log-0.4.17.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "log",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,69 +43,29 @@
     ],
     version = "0.4.17",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",
-            "@rules_rust_util_import__log-0.4.17//:build_script_build",
-        ],
-    }),
+        "@rules_rust_util_import__cfg-if-1.0.0//:cfg_if",
+        "@rules_rust_util_import__log-0.4.17//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "log_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["std"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,28 +74,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.17",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "log_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/util/import/3rdparty/crates/BUILD.memchr-2.5.0.bazel b/util/import/3rdparty/crates/BUILD.memchr-2.5.0.bazel
index 2b421d6..877b746 100644
--- a/util/import/3rdparty/crates/BUILD.memchr-2.5.0.bazel
+++ b/util/import/3rdparty/crates/BUILD.memchr-2.5.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "memchr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
         "use_std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,33 +47,13 @@
     ],
     version = "2.5.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_util_import__memchr-2.5.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_util_import__memchr-2.5.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "memchr_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -125,32 +65,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -159,28 +81,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "2.5.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "memchr_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/util/import/3rdparty/crates/BUILD.proc-macro2-1.0.33.bazel b/util/import/3rdparty/crates/BUILD.proc-macro2-1.0.33.bazel
index bd3bfd3..719ef3d 100644
--- a/util/import/3rdparty/crates/BUILD.proc-macro2-1.0.33.bazel
+++ b/util/import/3rdparty/crates/BUILD.proc-macro2-1.0.33.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "proc_macro2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "1.0.33",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_util_import__proc-macro2-1.0.33//:build_script_build",
-            "@rules_rust_util_import__unicode-xid-0.2.4//:unicode_xid",
-        ],
-    }),
+        "@rules_rust_util_import__proc-macro2-1.0.33//:build_script_build",
+        "@rules_rust_util_import__unicode-xid-0.2.4//:unicode_xid",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "proc-macro2_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.33",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "proc-macro2_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/util/import/3rdparty/crates/BUILD.quickcheck-1.0.3.bazel b/util/import/3rdparty/crates/BUILD.quickcheck-1.0.3.bazel
index cc4b637..6759063 100644
--- a/util/import/3rdparty/crates/BUILD.quickcheck-1.0.3.bazel
+++ b/util/import/3rdparty/crates/BUILD.quickcheck-1.0.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "quickcheck",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "env_logger",
@@ -53,29 +38,8 @@
         "use_logging",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,11 +48,8 @@
     ],
     version = "1.0.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_util_import__env_logger-0.8.4//:env_logger",
-            "@rules_rust_util_import__log-0.4.17//:log",
-            "@rules_rust_util_import__rand-0.8.5//:rand",
-        ],
-    }),
+        "@rules_rust_util_import__env_logger-0.8.4//:env_logger",
+        "@rules_rust_util_import__log-0.4.17//:log",
+        "@rules_rust_util_import__rand-0.8.5//:rand",
+    ],
 )
diff --git a/util/import/3rdparty/crates/BUILD.quote-1.0.10.bazel b/util/import/3rdparty/crates/BUILD.quote-1.0.10.bazel
index 509f18e..3214b15 100644
--- a/util/import/3rdparty/crates/BUILD.quote-1.0.10.bazel
+++ b/util/import/3rdparty/crates/BUILD.quote-1.0.10.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "quote",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "1.0.10",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_util_import__proc-macro2-1.0.33//:proc_macro2",
-        ],
-    }),
+        "@rules_rust_util_import__proc-macro2-1.0.33//:proc_macro2",
+    ],
 )
diff --git a/util/import/3rdparty/crates/BUILD.rand-0.8.5.bazel b/util/import/3rdparty/crates/BUILD.rand-0.8.5.bazel
index 32a5338..1682d77 100644
--- a/util/import/3rdparty/crates/BUILD.rand-0.8.5.bazel
+++ b/util/import/3rdparty/crates/BUILD.rand-0.8.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "rand",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "getrandom",
         "small_rng",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.8.5",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_util_import__rand_core-0.6.4//:rand_core",
-        ],
-    }),
+        "@rules_rust_util_import__rand_core-0.6.4//:rand_core",
+    ],
 )
diff --git a/util/import/3rdparty/crates/BUILD.rand_core-0.6.4.bazel b/util/import/3rdparty/crates/BUILD.rand_core-0.6.4.bazel
index 02fc5d7..82343ef 100644
--- a/util/import/3rdparty/crates/BUILD.rand_core-0.6.4.bazel
+++ b/util/import/3rdparty/crates/BUILD.rand_core-0.6.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "rand_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "getrandom",
-    ],
+    ),
+    crate_features = ["getrandom"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.6.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_util_import__getrandom-0.2.8//:getrandom",
-        ],
-    }),
+        "@rules_rust_util_import__getrandom-0.2.8//:getrandom",
+    ],
 )
diff --git a/util/import/3rdparty/crates/BUILD.regex-1.4.6.bazel b/util/import/3rdparty/crates/BUILD.regex-1.4.6.bazel
index 29e4120..4673166 100644
--- a/util/import/3rdparty/crates/BUILD.regex-1.4.6.bazel
+++ b/util/import/3rdparty/crates/BUILD.regex-1.4.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "regex",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "aho-corasick",
         "memchr",
@@ -56,29 +41,8 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,11 +51,8 @@
     ],
     version = "1.4.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_util_import__aho-corasick-0.7.15//:aho_corasick",
-            "@rules_rust_util_import__memchr-2.5.0//:memchr",
-            "@rules_rust_util_import__regex-syntax-0.6.28//:regex_syntax",
-        ],
-    }),
+        "@rules_rust_util_import__aho-corasick-0.7.15//:aho_corasick",
+        "@rules_rust_util_import__memchr-2.5.0//:memchr",
+        "@rules_rust_util_import__regex-syntax-0.6.28//:regex_syntax",
+    ],
 )
diff --git a/util/import/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel b/util/import/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel
index befa703..1e48116 100644
--- a/util/import/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel
+++ b/util/import/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "regex_syntax",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.6.28",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/util/import/3rdparty/crates/BUILD.syn-1.0.82.bazel b/util/import/3rdparty/crates/BUILD.syn-1.0.82.bazel
index 8da4fff..8d2d151 100644
--- a/util/import/3rdparty/crates/BUILD.syn-1.0.82.bazel
+++ b/util/import/3rdparty/crates/BUILD.syn-1.0.82.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "syn",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "clone-impls",
         "default",
@@ -60,29 +41,8 @@
         "quote",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -91,36 +51,16 @@
     ],
     version = "1.0.82",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_util_import__proc-macro2-1.0.33//:proc_macro2",
-            "@rules_rust_util_import__quote-1.0.10//:quote",
-            "@rules_rust_util_import__syn-1.0.82//:build_script_build",
-            "@rules_rust_util_import__unicode-xid-0.2.4//:unicode_xid",
-        ],
-    }),
+        "@rules_rust_util_import__proc-macro2-1.0.33//:proc_macro2",
+        "@rules_rust_util_import__quote-1.0.10//:quote",
+        "@rules_rust_util_import__syn-1.0.82//:build_script_build",
+        "@rules_rust_util_import__unicode-xid-0.2.4//:unicode_xid",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "syn_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "clone-impls",
         "default",
@@ -136,32 +76,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -170,28 +92,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.82",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "syn_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/util/import/3rdparty/crates/BUILD.unicode-xid-0.2.4.bazel b/util/import/3rdparty/crates/BUILD.unicode-xid-0.2.4.bazel
index 8431f04..78dccba 100644
--- a/util/import/3rdparty/crates/BUILD.unicode-xid-0.2.4.bazel
+++ b/util/import/3rdparty/crates/BUILD.unicode-xid-0.2.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "unicode_xid",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.2.4",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/util/import/3rdparty/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel b/util/import/3rdparty/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel
index 74dec51..4e72bb2 100644
--- a/util/import/3rdparty/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel
+++ b/util/import/3rdparty/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//util/import/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "wasi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "0.11.0+wasi-snapshot-preview1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel b/wasm_bindgen/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel
index 7800451..29843af 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.aho-corasick-0.7.20.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "aho_corasick",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.7.20",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__memchr-2.5.0//:memchr",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__memchr-2.5.0//:memchr",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.android_system_properties-0.1.5.bazel b/wasm_bindgen/3rdparty/crates/BUILD.android_system_properties-0.1.5.bazel
index b91a34f..d32196b 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.android_system_properties-0.1.5.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.android_system_properties-0.1.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "android_system_properties",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.1.5",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.anyhow-1.0.68.bazel b/wasm_bindgen/3rdparty/crates/BUILD.anyhow-1.0.68.bazel
index 37757ef..7ebdb2b 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.anyhow-1.0.68.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.anyhow-1.0.68.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "anyhow",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "1.0.68",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__anyhow-1.0.68//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__anyhow-1.0.68//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "anyhow_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.68",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "anyhow_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.ascii-1.1.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.ascii-1.1.0.bazel
index 4358148..b0bbf43 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.ascii-1.1.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.ascii-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "ascii",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.assert_cmd-1.0.8.bazel b/wasm_bindgen/3rdparty/crates/BUILD.assert_cmd-1.0.8.bazel
index f612199..a6067cb 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.assert_cmd-1.0.8.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.assert_cmd-1.0.8.bazel
@@ -6,11 +6,8 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
-    "rust_binary",
     "rust_library",
 )
 
@@ -22,56 +19,20 @@
 
 rust_library(
     name = "assert_cmd",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,87 +41,11 @@
     ],
     version = "1.0.8",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__bstr-0.2.17//:bstr",
-            "@rules_rust_wasm_bindgen__doc-comment-0.3.3//:doc_comment",
-            "@rules_rust_wasm_bindgen__predicates-2.1.5//:predicates",
-            "@rules_rust_wasm_bindgen__predicates-core-1.0.5//:predicates_core",
-            "@rules_rust_wasm_bindgen__predicates-tree-1.0.7//:predicates_tree",
-            "@rules_rust_wasm_bindgen__wait-timeout-0.2.0//:wait_timeout",
-        ],
-    }),
-)
-
-rust_binary(
-    name = "bin_fixture__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    compile_data = glob(
-        include = ["**"],
-        exclude = [
-            "**/* *",
-            "BUILD.bazel",
-            "BUILD",
-            "WORKSPACE.bazel",
-            "WORKSPACE",
-        ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
+        "@rules_rust_wasm_bindgen__bstr-0.2.17//:bstr",
+        "@rules_rust_wasm_bindgen__doc-comment-0.3.3//:doc_comment",
+        "@rules_rust_wasm_bindgen__predicates-2.1.5//:predicates",
+        "@rules_rust_wasm_bindgen__predicates-core-1.0.5//:predicates_core",
+        "@rules_rust_wasm_bindgen__predicates-tree-1.0.7//:predicates_tree",
+        "@rules_rust_wasm_bindgen__wait-timeout-0.2.0//:wait_timeout",
     ],
-    crate_root = "src/bin/bin_fixture.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
-    tags = [
-        "cargo-bazel",
-        "manual",
-        "noclippy",
-        "norustfmt",
-    ],
-    version = "1.0.8",
-    deps = [
-        ":assert_cmd",
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__bstr-0.2.17//:bstr",
-            "@rules_rust_wasm_bindgen__doc-comment-0.3.3//:doc_comment",
-            "@rules_rust_wasm_bindgen__predicates-2.1.5//:predicates",
-            "@rules_rust_wasm_bindgen__predicates-core-1.0.5//:predicates_core",
-            "@rules_rust_wasm_bindgen__predicates-tree-1.0.7//:predicates_tree",
-            "@rules_rust_wasm_bindgen__wait-timeout-0.2.0//:wait_timeout",
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.atty-0.2.14.bazel b/wasm_bindgen/3rdparty/crates/BUILD.atty-0.2.14.bazel
index ac1c78a..931cd39 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.atty-0.2.14.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.atty-0.2.14.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "atty",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.2.14",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
@@ -146,7 +107,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.autocfg-1.1.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.autocfg-1.1.0.bazel
index 38b8d88..64436d2 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.autocfg-1.1.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.autocfg-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "autocfg",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.base64-0.13.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.base64-0.13.1.bazel
index c86a605..d90162c 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.base64-0.13.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.base64-0.13.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "base64",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "0.13.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.base64-0.9.3.bazel b/wasm_bindgen/3rdparty/crates/BUILD.base64-0.9.3.bazel
index ec5eaf4..3b57e17 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.base64-0.9.3.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.base64-0.9.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "base64",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.9.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__byteorder-1.4.3//:byteorder",
-            "@rules_rust_wasm_bindgen__safemem-0.3.3//:safemem",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__byteorder-1.4.3//:byteorder",
+        "@rules_rust_wasm_bindgen__safemem-0.3.3//:safemem",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.bazel b/wasm_bindgen/3rdparty/crates/BUILD.bazel
index 6ec96c4..08deb43 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.bazel
@@ -13,21 +13,15 @@
         "cargo-bazel.json",
         "crates.bzl",
         "defs.bzl",
-    ] + glob(
-        include = ["*.bazel"],
-        exclude = [],
-    ),
+    ] + glob(["*.bazel"]),
 )
 
 filegroup(
     name = "srcs",
-    srcs = glob(
-        include = [
-            "*.bazel",
-            "*.bzl",
-        ],
-        exclude = [],
-    ),
+    srcs = glob([
+        "*.bazel",
+        "*.bzl",
+    ]),
 )
 
 # Workspace Member Dependencies
@@ -168,64 +162,3 @@
     actual = "@rules_rust_wasm_bindgen__wit-walrus-0.6.0//:wit_walrus",
     tags = ["manual"],
 )
-
-# Binaries
-alias(
-    name = "assert_cmd__bin_fixture",
-    actual = "@rules_rust_wasm_bindgen__assert_cmd-1.0.8//:bin_fixture__bin",
-    tags = ["manual"],
-)
-
-alias(
-    name = "cc__gcc-shim",
-    actual = "@rules_rust_wasm_bindgen__cc-1.0.78//:gcc-shim__bin",
-    tags = ["manual"],
-)
-
-alias(
-    name = "difference__difference",
-    actual = "@rules_rust_wasm_bindgen__difference-2.0.0//:difference__bin",
-    tags = ["manual"],
-)
-
-alias(
-    name = "docopt__docopt-wordlist",
-    actual = "@rules_rust_wasm_bindgen__docopt-1.1.1//:docopt-wordlist__bin",
-    tags = ["manual"],
-)
-
-alias(
-    name = "leb128__leb128-repl",
-    actual = "@rules_rust_wasm_bindgen__leb128-0.2.5//:leb128-repl__bin",
-    tags = ["manual"],
-)
-
-alias(
-    name = "multipart__form_test",
-    actual = "@rules_rust_wasm_bindgen__multipart-0.18.0//:form_test__bin",
-    tags = ["manual"],
-)
-
-alias(
-    name = "wait-timeout__exit",
-    actual = "@rules_rust_wasm_bindgen__wait-timeout-0.2.0//:exit__bin",
-    tags = ["manual"],
-)
-
-alias(
-    name = "wait-timeout__reader",
-    actual = "@rules_rust_wasm_bindgen__wait-timeout-0.2.0//:reader__bin",
-    tags = ["manual"],
-)
-
-alias(
-    name = "wait-timeout__sleep",
-    actual = "@rules_rust_wasm_bindgen__wait-timeout-0.2.0//:sleep__bin",
-    tags = ["manual"],
-)
-
-alias(
-    name = "wit-schema-version__wit-schema-version",
-    actual = "@rules_rust_wasm_bindgen__wit-schema-version-0.1.0//:wit-schema-version__bin",
-    tags = ["manual"],
-)
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.bitflags-1.3.2.bazel b/wasm_bindgen/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
index 33bc231..7caeea7 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.bitflags-1.3.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "bitflags",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "1.3.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.block-buffer-0.10.3.bazel b/wasm_bindgen/3rdparty/crates/BUILD.block-buffer-0.10.3.bazel
index d7d07d2..3b92d39 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.block-buffer-0.10.3.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.block-buffer-0.10.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "block_buffer",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.10.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__generic-array-0.14.6//:generic_array",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__generic-array-0.14.6//:generic_array",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.bstr-0.2.17.bazel b/wasm_bindgen/3rdparty/crates/BUILD.bstr-0.2.17.bazel
index 5cebad1..49a555d 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.bstr-0.2.17.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.bstr-0.2.17.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "bstr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "lazy_static",
@@ -53,29 +38,8 @@
         "unicode",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,11 +48,8 @@
     ],
     version = "0.2.17",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__lazy_static-1.4.0//:lazy_static",
-            "@rules_rust_wasm_bindgen__memchr-2.5.0//:memchr",
-            "@rules_rust_wasm_bindgen__regex-automata-0.1.10//:regex_automata",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__lazy_static-1.4.0//:lazy_static",
+        "@rules_rust_wasm_bindgen__memchr-2.5.0//:memchr",
+        "@rules_rust_wasm_bindgen__regex-automata-0.1.10//:regex_automata",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.buf_redux-0.8.4.bazel b/wasm_bindgen/3rdparty/crates/BUILD.buf_redux-0.8.4.bazel
index 973f89e..fcd120f 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.buf_redux-0.8.4.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.buf_redux-0.8.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "buf_redux",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.8.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__memchr-2.5.0//:memchr",
-            "@rules_rust_wasm_bindgen__safemem-0.3.3//:safemem",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__memchr-2.5.0//:memchr",
+        "@rules_rust_wasm_bindgen__safemem-0.3.3//:safemem",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.bumpalo-3.11.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.bumpalo-3.11.1.bazel
index 3d89d2c..879d50f 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.bumpalo-3.11.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.bumpalo-3.11.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "bumpalo",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "3.11.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.byteorder-1.4.3.bazel b/wasm_bindgen/3rdparty/crates/BUILD.byteorder-1.4.3.bazel
index 6a1f91b..4f43579 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.byteorder-1.4.3.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.byteorder-1.4.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "byteorder",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "1.4.3",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.cc-1.0.78.bazel b/wasm_bindgen/3rdparty/crates/BUILD.cc-1.0.78.bazel
index 11f6d8e..6822299 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.cc-1.0.78.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.cc-1.0.78.bazel
@@ -6,11 +6,8 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
-    "rust_binary",
     "rust_library",
 )
 
@@ -22,56 +19,20 @@
 
 rust_library(
     name = "cc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,76 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.78",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-)
-
-rust_binary(
-    name = "gcc-shim__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    compile_data = glob(
-        include = ["**"],
-        exclude = [
-            "**/* *",
-            "BUILD.bazel",
-            "BUILD",
-            "WORKSPACE.bazel",
-            "WORKSPACE",
-        ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
-    crate_root = "src/bin/gcc-shim.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
-    tags = [
-        "cargo-bazel",
-        "manual",
-        "noclippy",
-        "norustfmt",
-    ],
-    version = "1.0.78",
-    deps = [
-        ":cc",
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
index 7381dce..128ed75 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.cfg-if-1.0.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cfg_if",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.chrono-0.4.23.bazel b/wasm_bindgen/3rdparty/crates/BUILD.chrono-0.4.23.bazel
index 0907af8..8389e66 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.chrono-0.4.23.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.chrono-0.4.23.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "chrono",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "clock",
         "iana-time-zone",
@@ -52,29 +37,8 @@
         "winapi",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -83,29 +47,19 @@
     ],
     version = "0.4.23",
     deps = [
+        "@rules_rust_wasm_bindgen__iana-time-zone-0.1.53//:iana_time_zone",
+        "@rules_rust_wasm_bindgen__num-integer-0.1.45//:num_integer",
+        "@rules_rust_wasm_bindgen__num-traits-0.2.15//:num_traits",
     ] + select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__iana-time-zone-0.1.53//:iana_time_zone",  # common dependency
-            "@rules_rust_wasm_bindgen__num-integer-0.1.45//:num_integer",  # common dependency
-            "@rules_rust_wasm_bindgen__num-traits-0.2.15//:num_traits",  # common dependency
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__iana-time-zone-0.1.53//:iana_time_zone",  # common dependency
-            "@rules_rust_wasm_bindgen__num-integer-0.1.45//:num_integer",  # common dependency
-            "@rules_rust_wasm_bindgen__num-traits-0.2.15//:num_traits",  # common dependency
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__iana-time-zone-0.1.53//:iana_time_zone",  # common dependency
-            "@rules_rust_wasm_bindgen__num-integer-0.1.45//:num_integer",  # common dependency
-            "@rules_rust_wasm_bindgen__num-traits-0.2.15//:num_traits",  # common dependency
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__iana-time-zone-0.1.53//:iana_time_zone",
-            "@rules_rust_wasm_bindgen__num-integer-0.1.45//:num_integer",
-            "@rules_rust_wasm_bindgen__num-traits-0.2.15//:num_traits",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.chunked_transfer-1.4.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.chunked_transfer-1.4.1.bazel
index c35f565..1f6596f 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.chunked_transfer-1.4.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.chunked_transfer-1.4.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "chunked_transfer",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.4.1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.codespan-reporting-0.11.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.codespan-reporting-0.11.1.bazel
index d75023c..3efc38d 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.codespan-reporting-0.11.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.codespan-reporting-0.11.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "codespan_reporting",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.11.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__termcolor-1.1.3//:termcolor",
-            "@rules_rust_wasm_bindgen__unicode-width-0.1.10//:unicode_width",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__termcolor-1.1.3//:termcolor",
+        "@rules_rust_wasm_bindgen__unicode-width-0.1.10//:unicode_width",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.core-foundation-sys-0.8.3.bazel b/wasm_bindgen/3rdparty/crates/BUILD.core-foundation-sys-0.8.3.bazel
index 2acd41a..e60a82b 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.core-foundation-sys-0.8.3.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.core-foundation-sys-0.8.3.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "core_foundation_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.8.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__core-foundation-sys-0.8.3//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__core-foundation-sys-0.8.3//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "core-foundation-sys_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.8.3",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "core-foundation-sys_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.cpufeatures-0.2.5.bazel b/wasm_bindgen/3rdparty/crates/BUILD.cpufeatures-0.2.5.bazel
index 6847ba0..cc2e9b2 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.cpufeatures-0.2.5.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.cpufeatures-0.2.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cpufeatures",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.2.5",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # aarch64-apple-darwin
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(all(target_arch = "aarch64", target_os = "linux"))
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-channel-0.5.6.bazel b/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-channel-0.5.6.bazel
index e747732..500c0ba 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-channel-0.5.6.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-channel-0.5.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "crossbeam_channel",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "crossbeam-utils",
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,10 +46,7 @@
     ],
     version = "0.5.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
-            "@rules_rust_wasm_bindgen__crossbeam-utils-0.8.14//:crossbeam_utils",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
+        "@rules_rust_wasm_bindgen__crossbeam-utils-0.8.14//:crossbeam_utils",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-deque-0.8.2.bazel b/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-deque-0.8.2.bazel
index 41f25ee..8dd892e 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-deque-0.8.2.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-deque-0.8.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "crossbeam_deque",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "crossbeam-epoch",
         "crossbeam-utils",
@@ -52,29 +37,8 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -83,11 +47,8 @@
     ],
     version = "0.8.2",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
-            "@rules_rust_wasm_bindgen__crossbeam-epoch-0.9.13//:crossbeam_epoch",
-            "@rules_rust_wasm_bindgen__crossbeam-utils-0.8.14//:crossbeam_utils",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
+        "@rules_rust_wasm_bindgen__crossbeam-epoch-0.9.13//:crossbeam_epoch",
+        "@rules_rust_wasm_bindgen__crossbeam-utils-0.8.14//:crossbeam_utils",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-epoch-0.9.13.bazel b/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-epoch-0.9.13.bazel
index c66a78a..318edfa 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-epoch-0.9.13.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-epoch-0.9.13.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "crossbeam_epoch",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,37 +46,17 @@
     ],
     version = "0.9.13",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
-            "@rules_rust_wasm_bindgen__crossbeam-epoch-0.9.13//:build_script_build",
-            "@rules_rust_wasm_bindgen__crossbeam-utils-0.8.14//:crossbeam_utils",
-            "@rules_rust_wasm_bindgen__memoffset-0.7.1//:memoffset",
-            "@rules_rust_wasm_bindgen__scopeguard-1.1.0//:scopeguard",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
+        "@rules_rust_wasm_bindgen__crossbeam-epoch-0.9.13//:build_script_build",
+        "@rules_rust_wasm_bindgen__crossbeam-utils-0.8.14//:crossbeam_utils",
+        "@rules_rust_wasm_bindgen__memoffset-0.7.1//:memoffset",
+        "@rules_rust_wasm_bindgen__scopeguard-1.1.0//:scopeguard",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "crossbeam-epoch_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "alloc",
         "std",
@@ -127,32 +67,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -161,29 +83,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.9.13",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "crossbeam-epoch_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-utils-0.8.14.bazel b/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-utils-0.8.14.bazel
index b2f972b..ac42ccd 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-utils-0.8.14.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.crossbeam-utils-0.8.14.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "crossbeam_utils",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "0.8.14",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
-            "@rules_rust_wasm_bindgen__crossbeam-utils-0.8.14//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
+        "@rules_rust_wasm_bindgen__crossbeam-utils-0.8.14//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "crossbeam-utils_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.8.14",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "crossbeam-utils_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.crypto-common-0.1.6.bazel b/wasm_bindgen/3rdparty/crates/BUILD.crypto-common-0.1.6.bazel
index e65eb45..cda1f9b 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.crypto-common-0.1.6.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.crypto-common-0.1.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "crypto_common",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,10 +42,7 @@
     ],
     version = "0.1.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__generic-array-0.14.6//:generic_array",
-            "@rules_rust_wasm_bindgen__typenum-1.16.0//:typenum",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__generic-array-0.14.6//:generic_array",
+        "@rules_rust_wasm_bindgen__typenum-1.16.0//:typenum",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.curl-0.4.44.bazel b/wasm_bindgen/3rdparty/crates/BUILD.curl-0.4.44.bazel
index 8cea48c..21bf5a9 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.curl-0.4.44.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.curl-0.4.44.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "curl",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "openssl-probe",
@@ -57,29 +38,8 @@
         "ssl",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -88,188 +48,94 @@
     ],
     version = "0.4.44",
     deps = [
+        "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",
+        "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",
+        "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",
+        "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__schannel-0.1.20//:schannel",  # cfg(target_env = "msvc")
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(target_env = "msvc")
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__schannel-0.1.20//:schannel",  # cfg(target_env = "msvc")
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(target_env = "msvc")
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__schannel-0.1.20//:schannel",  # cfg(target_env = "msvc")
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(target_env = "msvc")
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",  # common dependency
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",  # common dependency
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-probe-0.1.5//:openssl_probe",  # cfg(all(unix, not(target_os = "macos")))
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",  # common dependency
         ],
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__curl-0.4.44//:build_script_build",
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",
-            "@rules_rust_wasm_bindgen__socket2-0.4.7//:socket2",
-        ],
+        "//conditions:default": [],
     }),
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "curl_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "openssl-probe",
@@ -282,32 +148,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -316,29 +164,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.44",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__curl-sys-0.4.59-curl-7.86.0//:curl_sys",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "curl_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.curl-sys-0.4.59+curl-7.86.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.curl-sys-0.4.59+curl-7.86.0.bazel
index 156b0b5..4697cad 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.curl-sys-0.4.59+curl-7.86.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.curl-sys-0.4.59+curl-7.86.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "curl_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "openssl-sys",
         "ssl",
     ],
     crate_root = "lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,105 +45,66 @@
     ],
     version = "0.4.59+curl-7.86.0",
     deps = [
+        "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",
+        "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # common dependency
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",  # common dependency
             "@rules_rust_wasm_bindgen__openssl-sys-0.9.80//:openssl_sys",  # cfg(all(unix, not(target_os = "macos")))
         ],
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:libz_sys",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.cxx-1.0.85.bazel b/wasm_bindgen/3rdparty/crates/BUILD.cxx-1.0.85.bazel
index a2ef059..49848b3 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.cxx-1.0.85.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.cxx-1.0.85.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,60 +20,28 @@
 
 rust_library(
     name = "cxx",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cxxbridge-macro-1.0.85//:cxxbridge_macro",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@rules_rust_wasm_bindgen__cxxbridge-macro-1.0.85//:cxxbridge_macro",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -88,34 +50,14 @@
     ],
     version = "1.0.85",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cxx-1.0.85//:build_script_build",
-            "@rules_rust_wasm_bindgen__link-cplusplus-1.0.8//:link_cplusplus",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__cxx-1.0.85//:build_script_build",
+        "@rules_rust_wasm_bindgen__link-cplusplus-1.0.8//:link_cplusplus",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "cxx_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "alloc",
         "default",
@@ -127,33 +69,15 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
     links = "cxxbridge1",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -162,30 +86,16 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.85",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cc-1.0.78//:cc",
-            "@rules_rust_wasm_bindgen__cxxbridge-flags-1.0.85//:cxxbridge_flags",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__cc-1.0.78//:cc",
+        "@rules_rust_wasm_bindgen__cxxbridge-flags-1.0.85//:cxxbridge_flags",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "cxx_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.cxx-build-1.0.85.bazel b/wasm_bindgen/3rdparty/crates/BUILD.cxx-build-1.0.85.bazel
index 4cd9861..337474b 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.cxx-build-1.0.85.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.cxx-build-1.0.85.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "cxx_build",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,15 +41,12 @@
     ],
     version = "1.0.85",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cc-1.0.78//:cc",
-            "@rules_rust_wasm_bindgen__codespan-reporting-0.11.1//:codespan_reporting",
-            "@rules_rust_wasm_bindgen__once_cell-1.17.0//:once_cell",
-            "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
-            "@rules_rust_wasm_bindgen__scratch-1.0.3//:scratch",
-            "@rules_rust_wasm_bindgen__syn-1.0.107//:syn",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__cc-1.0.78//:cc",
+        "@rules_rust_wasm_bindgen__codespan-reporting-0.11.1//:codespan_reporting",
+        "@rules_rust_wasm_bindgen__once_cell-1.17.0//:once_cell",
+        "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
+        "@rules_rust_wasm_bindgen__scratch-1.0.3//:scratch",
+        "@rules_rust_wasm_bindgen__syn-1.0.107//:syn",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.cxxbridge-flags-1.0.85.bazel b/wasm_bindgen/3rdparty/crates/BUILD.cxxbridge-flags-1.0.85.bazel
index fe80272..1eaaed3 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.cxxbridge-flags-1.0.85.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.cxxbridge-flags-1.0.85.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "cxxbridge_flags",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "1.0.85",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.cxxbridge-macro-1.0.85.bazel b/wasm_bindgen/3rdparty/crates/BUILD.cxxbridge-macro-1.0.85.bazel
index 8d824d8..4cca3e3 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.cxxbridge-macro-1.0.85.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.cxxbridge-macro-1.0.85.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,56 +19,20 @@
 
 rust_proc_macro(
     name = "cxxbridge_macro",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "1.0.85",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
-            "@rules_rust_wasm_bindgen__syn-1.0.107//:syn",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
+        "@rules_rust_wasm_bindgen__syn-1.0.107//:syn",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.diff-0.1.13.bazel b/wasm_bindgen/3rdparty/crates/BUILD.diff-0.1.13.bazel
index 3e93729..f172b0d 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.diff-0.1.13.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.diff-0.1.13.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "diff",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.13",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.difference-2.0.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.difference-2.0.0.bazel
index ea5ce7a..a73d1b2 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.difference-2.0.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.difference-2.0.0.bazel
@@ -6,11 +6,8 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
-    "rust_binary",
     "rust_library",
 )
 
@@ -22,57 +19,21 @@
 
 rust_library(
     name = "difference",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,77 +41,4 @@
         "norustfmt",
     ],
     version = "2.0.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-)
-
-rust_binary(
-    name = "difference__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    compile_data = glob(
-        include = ["**"],
-        exclude = [
-            "**/* *",
-            "BUILD.bazel",
-            "BUILD",
-            "WORKSPACE.bazel",
-            "WORKSPACE",
-        ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
-    crate_root = "src/main.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
-    tags = [
-        "cargo-bazel",
-        "manual",
-        "noclippy",
-        "norustfmt",
-    ],
-    version = "2.0.0",
-    deps = [
-        ":difference",
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.difflib-0.4.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.difflib-0.4.0.bazel
index 849d260..e348503 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.difflib-0.4.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.difflib-0.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "difflib",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.4.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.digest-0.10.6.bazel b/wasm_bindgen/3rdparty/crates/BUILD.digest-0.10.6.bazel
index 8a71e77..837c405 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.digest-0.10.6.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.digest-0.10.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "digest",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "block-buffer",
@@ -53,29 +38,8 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,10 +48,7 @@
     ],
     version = "0.10.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__block-buffer-0.10.3//:block_buffer",
-            "@rules_rust_wasm_bindgen__crypto-common-0.1.6//:crypto_common",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__block-buffer-0.10.3//:block_buffer",
+        "@rules_rust_wasm_bindgen__crypto-common-0.1.6//:crypto_common",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.doc-comment-0.3.3.bazel b/wasm_bindgen/3rdparty/crates/BUILD.doc-comment-0.3.3.bazel
index 0dc7603..73dd760 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.doc-comment-0.3.3.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.doc-comment-0.3.3.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "doc_comment",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.3.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__doc-comment-0.3.3//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__doc-comment-0.3.3//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "doc-comment_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.3",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "doc-comment_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.docopt-1.1.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.docopt-1.1.1.bazel
index e6f3800..2317d24 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.docopt-1.1.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.docopt-1.1.1.bazel
@@ -6,11 +6,8 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
-    "rust_binary",
     "rust_library",
 )
 
@@ -22,56 +19,20 @@
 
 rust_library(
     name = "docopt",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,83 +41,9 @@
     ],
     version = "1.1.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__lazy_static-1.4.0//:lazy_static",
-            "@rules_rust_wasm_bindgen__regex-1.7.0//:regex",
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",
-            "@rules_rust_wasm_bindgen__strsim-0.10.0//:strsim",
-        ],
-    }),
-)
-
-rust_binary(
-    name = "docopt-wordlist__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    compile_data = glob(
-        include = ["**"],
-        exclude = [
-            "**/* *",
-            "BUILD.bazel",
-            "BUILD",
-            "WORKSPACE.bazel",
-            "WORKSPACE",
-        ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
+        "@rules_rust_wasm_bindgen__lazy_static-1.4.0//:lazy_static",
+        "@rules_rust_wasm_bindgen__regex-1.7.0//:regex",
+        "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",
+        "@rules_rust_wasm_bindgen__strsim-0.10.0//:strsim",
     ],
-    crate_root = "src/wordlist.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
-    tags = [
-        "cargo-bazel",
-        "manual",
-        "noclippy",
-        "norustfmt",
-    ],
-    version = "1.1.1",
-    deps = [
-        ":docopt",
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__lazy_static-1.4.0//:lazy_static",
-            "@rules_rust_wasm_bindgen__regex-1.7.0//:regex",
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",
-            "@rules_rust_wasm_bindgen__strsim-0.10.0//:strsim",
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.either-1.8.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.either-1.8.0.bazel
index d43ee07..4eb36b8 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.either-1.8.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.either-1.8.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "either",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "use_std",
-    ],
+    ),
+    crate_features = ["use_std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "1.8.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.env_logger-0.8.4.bazel b/wasm_bindgen/3rdparty/crates/BUILD.env_logger-0.8.4.bazel
index 7740807..29d36cf 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.env_logger-0.8.4.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.env_logger-0.8.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "env_logger",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "atty",
         "default",
@@ -53,29 +38,8 @@
         "termcolor",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,13 +48,10 @@
     ],
     version = "0.8.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__atty-0.2.14//:atty",
-            "@rules_rust_wasm_bindgen__humantime-2.1.0//:humantime",
-            "@rules_rust_wasm_bindgen__log-0.4.17//:log",
-            "@rules_rust_wasm_bindgen__regex-1.7.0//:regex",
-            "@rules_rust_wasm_bindgen__termcolor-1.1.3//:termcolor",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__atty-0.2.14//:atty",
+        "@rules_rust_wasm_bindgen__humantime-2.1.0//:humantime",
+        "@rules_rust_wasm_bindgen__log-0.4.17//:log",
+        "@rules_rust_wasm_bindgen__regex-1.7.0//:regex",
+        "@rules_rust_wasm_bindgen__termcolor-1.1.3//:termcolor",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.fastrand-1.8.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.fastrand-1.8.0.bazel
index c454e49..1fb0aa3 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.fastrand-1.8.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.fastrand-1.8.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "fastrand",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,15 +40,13 @@
         "norustfmt",
     ],
     version = "1.8.0",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:wasm32-unknown-unknown": [
             "@rules_rust_wasm_bindgen__instant-0.1.12//:instant",  # cfg(target_arch = "wasm32")
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
             "@rules_rust_wasm_bindgen__instant-0.1.12//:instant",  # cfg(target_arch = "wasm32")
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.filetime-0.2.19.bazel b/wasm_bindgen/3rdparty/crates/BUILD.filetime-0.2.19.bazel
index b28cfe1..8a5ea91 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.filetime-0.2.19.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.filetime-0.2.19.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "filetime",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,97 +41,74 @@
     ],
     version = "0.2.19",
     deps = [
+        "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__windows-sys-0.42.0//:windows_sys",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.float-cmp-0.8.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.float-cmp-0.8.0.bazel
index e05473f..a81762a 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.float-cmp-0.8.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.float-cmp-0.8.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "float_cmp",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "num-traits",
         "ratio",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,6 @@
     ],
     version = "0.8.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__num-traits-0.2.15//:num_traits",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__num-traits-0.2.15//:num_traits",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.form_urlencoded-1.1.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.form_urlencoded-1.1.0.bazel
index bcc159b..7185e03 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.form_urlencoded-1.1.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.form_urlencoded-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "form_urlencoded",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "1.1.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__percent-encoding-2.2.0//:percent_encoding",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__percent-encoding-2.2.0//:percent_encoding",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.generic-array-0.14.6.bazel b/wasm_bindgen/3rdparty/crates/BUILD.generic-array-0.14.6.bazel
index 6ed47b8..e0d3d06 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.generic-array-0.14.6.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.generic-array-0.14.6.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "generic_array",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "more_lengths",
-    ],
+    ),
+    crate_features = ["more_lengths"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,69 +43,29 @@
     ],
     version = "0.14.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__generic-array-0.14.6//:build_script_build",
-            "@rules_rust_wasm_bindgen__typenum-1.16.0//:typenum",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__generic-array-0.14.6//:build_script_build",
+        "@rules_rust_wasm_bindgen__typenum-1.16.0//:typenum",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "generic-array_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "more_lengths",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["more_lengths"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,29 +74,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.14.6",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__version_check-0.9.4//:version_check",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__version_check-0.9.4//:version_check",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "generic-array_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.getrandom-0.2.8.bazel b/wasm_bindgen/3rdparty/crates/BUILD.getrandom-0.2.8.bazel
index 04c7c00..8e83ae4 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.getrandom-0.2.8.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.getrandom-0.2.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "getrandom",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,89 +42,68 @@
     ],
     version = "0.2.8",
     deps = [
+        "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__wasi-0.11.0-wasi-snapshot-preview1//:wasi",  # cfg(target_os = "wasi")
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.heck-0.3.3.bazel b/wasm_bindgen/3rdparty/crates/BUILD.heck-0.3.3.bazel
index 7a07bb0..2cb3e9d 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.heck-0.3.3.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.heck-0.3.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "heck",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.3.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__unicode-segmentation-1.10.0//:unicode_segmentation",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__unicode-segmentation-1.10.0//:unicode_segmentation",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.hermit-abi-0.1.19.bazel b/wasm_bindgen/3rdparty/crates/BUILD.hermit-abi-0.1.19.bazel
index dd0c89b..75d6070 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.hermit-abi-0.1.19.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.hermit-abi-0.1.19.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hermit_abi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.1.19",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.hermit-abi-0.2.6.bazel b/wasm_bindgen/3rdparty/crates/BUILD.hermit-abi-0.2.6.bazel
index 6c24b33..ab7da3b 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.hermit-abi-0.2.6.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.hermit-abi-0.2.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "hermit_abi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +42,6 @@
     ],
     version = "0.2.6",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.httparse-1.8.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.httparse-1.8.0.bazel
index 2fa0702..8dbefa9 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.httparse-1.8.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.httparse-1.8.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "httparse",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "1.8.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__httparse-1.8.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__httparse-1.8.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "httparse_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.8.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "httparse_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.httpdate-1.0.2.bazel b/wasm_bindgen/3rdparty/crates/BUILD.httpdate-1.0.2.bazel
index c4727b0..fc60b40 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.httpdate-1.0.2.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.httpdate-1.0.2.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "httpdate",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.2",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.humantime-2.1.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.humantime-2.1.0.bazel
index 23466bb..cecb6d8 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.humantime-2.1.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.humantime-2.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "humantime",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "2.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.iana-time-zone-0.1.53.bazel b/wasm_bindgen/3rdparty/crates/BUILD.iana-time-zone-0.1.53.bazel
index 54bdb2f..10af7d9 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.iana-time-zone-0.1.53.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.iana-time-zone-0.1.53.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "iana_time_zone",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "fallback",
-    ],
+    ),
+    crate_features = ["fallback"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,8 +41,7 @@
         "norustfmt",
     ],
     version = "0.1.53",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@rules_rust_wasm_bindgen__core-foundation-sys-0.8.3//:core_foundation_sys",  # cfg(any(target_os = "macos", target_os = "ios"))
         ],
@@ -128,7 +89,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(target_os = "windows")
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.iana-time-zone-haiku-0.1.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.iana-time-zone-haiku-0.1.1.bazel
index 1b9db5d..2200b02 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.iana-time-zone-haiku-0.1.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.iana-time-zone-haiku-0.1.1.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "iana_time_zone_haiku",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.1.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cxx-1.0.85//:cxx",
-            "@rules_rust_wasm_bindgen__iana-time-zone-haiku-0.1.1//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__cxx-1.0.85//:cxx",
+        "@rules_rust_wasm_bindgen__iana-time-zone-haiku-0.1.1//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "iana-time-zone-haiku_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,29 +72,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.1.1",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cxx-build-1.0.85//:cxx_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__cxx-build-1.0.85//:cxx_build",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "iana-time-zone-haiku_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.id-arena-2.2.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.id-arena-2.2.1.bazel
index e5b5bcb..1f2c89b 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.id-arena-2.2.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.id-arena-2.2.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "id_arena",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "rayon",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,6 @@
     ],
     version = "2.2.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__rayon-1.6.1//:rayon",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__rayon-1.6.1//:rayon",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.idna-0.3.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.idna-0.3.0.bazel
index 91931f2..65647b1 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.idna-0.3.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.idna-0.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "idna",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.3.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__unicode-bidi-0.3.8//:unicode_bidi",
-            "@rules_rust_wasm_bindgen__unicode-normalization-0.1.22//:unicode_normalization",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__unicode-bidi-0.3.8//:unicode_bidi",
+        "@rules_rust_wasm_bindgen__unicode-normalization-0.1.22//:unicode_normalization",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.instant-0.1.12.bazel b/wasm_bindgen/3rdparty/crates/BUILD.instant-0.1.12.bazel
index 554b35a..4c739c0 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.instant-0.1.12.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.instant-0.1.12.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "instant",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.1.12",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.itertools-0.10.5.bazel b/wasm_bindgen/3rdparty/crates/BUILD.itertools-0.10.5.bazel
index c518dbe..ced10cf 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.itertools-0.10.5.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.itertools-0.10.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "itertools",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "use_alloc",
         "use_std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,6 @@
     ],
     version = "0.10.5",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__either-1.8.0//:either",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__either-1.8.0//:either",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.itoa-1.0.5.bazel b/wasm_bindgen/3rdparty/crates/BUILD.itoa-1.0.5.bazel
index 14471e4..32efc40 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.itoa-1.0.5.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.itoa-1.0.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "itoa",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.5",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.js-sys-0.3.60.bazel b/wasm_bindgen/3rdparty/crates/BUILD.js-sys-0.3.60.bazel
index ed45b00..9f66159 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.js-sys-0.3.60.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.js-sys-0.3.60.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "js_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.3.60",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__wasm-bindgen-0.2.83//:wasm_bindgen",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__wasm-bindgen-0.2.83//:wasm_bindgen",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel
index 42b28d1..93631d4 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.lazy_static-1.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "lazy_static",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.4.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.leb128-0.2.5.bazel b/wasm_bindgen/3rdparty/crates/BUILD.leb128-0.2.5.bazel
index c8d5bb7..8b0935b 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.leb128-0.2.5.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.leb128-0.2.5.bazel
@@ -6,11 +6,8 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
-    "rust_binary",
     "rust_library",
 )
 
@@ -22,56 +19,20 @@
 
 rust_library(
     name = "leb128",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,76 +40,4 @@
         "norustfmt",
     ],
     version = "0.2.5",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-)
-
-rust_binary(
-    name = "leb128-repl__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    compile_data = glob(
-        include = ["**"],
-        exclude = [
-            "**/* *",
-            "BUILD.bazel",
-            "BUILD",
-            "WORKSPACE.bazel",
-            "WORKSPACE",
-        ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
-    crate_root = "src/bin/leb128-repl.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
-    tags = [
-        "cargo-bazel",
-        "manual",
-        "noclippy",
-        "norustfmt",
-    ],
-    version = "0.2.5",
-    deps = [
-        ":leb128",
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.libc-0.2.139.bazel b/wasm_bindgen/3rdparty/crates/BUILD.libc-0.2.139.bazel
index a4ba0b5..e066f7f 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.libc-0.2.139.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.libc-0.2.139.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "libc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,33 +46,13 @@
     ],
     version = "0.2.139",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__libc-0.2.139//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "libc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -123,32 +63,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,28 +79,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.139",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "libc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.libz-sys-1.1.8.bazel b/wasm_bindgen/3rdparty/crates/BUILD.libz-sys-1.1.8.bazel
index a0ce42f..1a5e776 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.libz-sys-1.1.8.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.libz-sys-1.1.8.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "libz_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "libc",
-    ],
+    ),
+    crate_features = ["libc"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,70 +43,30 @@
     ],
     version = "1.1.8",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",
-            "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",
+        "@rules_rust_wasm_bindgen__libz-sys-1.1.8//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "libz-sys_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "libc",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["libc"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
     links = "z",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -157,45 +75,27 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.1.8",
     visibility = ["//visibility:private"],
     deps = [
+        "@rules_rust_wasm_bindgen__cc-1.0.78//:cc",
+        "@rules_rust_wasm_bindgen__pkg-config-0.3.26//:pkg_config",
     ] + select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__cc-1.0.78//:cc",  # common dependency
-            "@rules_rust_wasm_bindgen__pkg-config-0.3.26//:pkg_config",  # common dependency
             "@rules_rust_wasm_bindgen__vcpkg-0.2.15//:vcpkg",  # cfg(target_env = "msvc")
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__cc-1.0.78//:cc",  # common dependency
-            "@rules_rust_wasm_bindgen__pkg-config-0.3.26//:pkg_config",  # common dependency
             "@rules_rust_wasm_bindgen__vcpkg-0.2.15//:vcpkg",  # cfg(target_env = "msvc")
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__cc-1.0.78//:cc",  # common dependency
-            "@rules_rust_wasm_bindgen__pkg-config-0.3.26//:pkg_config",  # common dependency
             "@rules_rust_wasm_bindgen__vcpkg-0.2.15//:vcpkg",  # cfg(target_env = "msvc")
         ],
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cc-1.0.78//:cc",
-            "@rules_rust_wasm_bindgen__pkg-config-0.3.26//:pkg_config",
-        ],
+        "//conditions:default": [],
     }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "libz-sys_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.link-cplusplus-1.0.8.bazel b/wasm_bindgen/3rdparty/crates/BUILD.link-cplusplus-1.0.8.bazel
index 206d30d..5fa58c1 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.link-cplusplus-1.0.8.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.link-cplusplus-1.0.8.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "link_cplusplus",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,69 +43,29 @@
     ],
     version = "1.0.8",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__link-cplusplus-1.0.8//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__link-cplusplus-1.0.8//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "link-cplusplus_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["default"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
     links = "cplusplus",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -156,29 +74,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.8",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cc-1.0.78//:cc",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__cc-1.0.78//:cc",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "link-cplusplus_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.log-0.4.17.bazel b/wasm_bindgen/3rdparty/crates/BUILD.log-0.4.17.bazel
index 3fe9b8a..26ee6fa 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.log-0.4.17.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.log-0.4.17.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,22 @@
 
 rust_library(
     name = "log",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
-
-        # User provided rustc_flags
         "--cfg=atomic_cas",
         "--cfg=use_std",
     ],
@@ -89,74 +47,30 @@
     ],
     version = "0.4.17",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
-            "@rules_rust_wasm_bindgen__log-0.4.17//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
+        "@rules_rust_wasm_bindgen__log-0.4.17//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "log_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["std"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
-
-        # User provided rustc_flags
-        "--cfg=atomic_cas",
-        "--cfg=use_std",
     ],
     tags = [
         "cargo-bazel",
@@ -164,28 +78,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.17",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "log_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.memchr-2.5.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.memchr-2.5.0.bazel
index 297ad67..16dfa4d 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.memchr-2.5.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.memchr-2.5.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,59 +20,25 @@
 
 rust_library(
     name = "memchr",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
         "use_std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,33 +47,13 @@
     ],
     version = "2.5.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__memchr-2.5.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__memchr-2.5.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "memchr_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -125,32 +65,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -159,28 +81,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "2.5.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "memchr_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.memoffset-0.7.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.memoffset-0.7.1.bazel
index a4bfe86..1971987 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.memoffset-0.7.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.memoffset-0.7.1.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "memoffset",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,68 +43,28 @@
     ],
     version = "0.7.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__memoffset-0.7.1//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__memoffset-0.7.1//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "memoffset_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["default"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -155,29 +73,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.7.1",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "memoffset_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.mime-0.3.16.bazel b/wasm_bindgen/3rdparty/crates/BUILD.mime-0.3.16.bazel
index bc75a57..ee16ecf 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.mime-0.3.16.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.mime-0.3.16.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "mime",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.16",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.mime_guess-2.0.4.bazel b/wasm_bindgen/3rdparty/crates/BUILD.mime_guess-2.0.4.bazel
index 5c46990..0942833 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.mime_guess-2.0.4.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.mime_guess-2.0.4.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "mime_guess",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "rev-mappings",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,35 +46,15 @@
     ],
     version = "2.0.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__mime-0.3.16//:mime",
-            "@rules_rust_wasm_bindgen__mime_guess-2.0.4//:build_script_build",
-            "@rules_rust_wasm_bindgen__unicase-2.6.0//:unicase",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__mime-0.3.16//:mime",
+        "@rules_rust_wasm_bindgen__mime_guess-2.0.4//:build_script_build",
+        "@rules_rust_wasm_bindgen__unicase-2.6.0//:unicase",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "mime_guess_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "rev-mappings",
@@ -125,32 +65,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -159,29 +81,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "2.0.4",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__unicase-2.6.0//:unicase",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__unicase-2.6.0//:unicase",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "mime_guess_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.multipart-0.18.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.multipart-0.18.0.bazel
index 9be2fab..e057957 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.multipart-0.18.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.multipart-0.18.0.bazel
@@ -6,11 +6,8 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
-    "rust_binary",
     "rust_library",
 )
 
@@ -22,30 +19,17 @@
 
 rust_library(
     name = "multipart",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "buf_redux",
         "httparse",
@@ -55,29 +39,8 @@
         "twoway",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,101 +49,15 @@
     ],
     version = "0.18.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__buf_redux-0.8.4//:buf_redux",
-            "@rules_rust_wasm_bindgen__httparse-1.8.0//:httparse",
-            "@rules_rust_wasm_bindgen__log-0.4.17//:log",
-            "@rules_rust_wasm_bindgen__mime-0.3.16//:mime",
-            "@rules_rust_wasm_bindgen__mime_guess-2.0.4//:mime_guess",
-            "@rules_rust_wasm_bindgen__quick-error-1.2.3//:quick_error",
-            "@rules_rust_wasm_bindgen__rand-0.8.5//:rand",
-            "@rules_rust_wasm_bindgen__safemem-0.3.3//:safemem",
-            "@rules_rust_wasm_bindgen__tempfile-3.3.0//:tempfile",
-            "@rules_rust_wasm_bindgen__twoway-0.1.8//:twoway",
-        ],
-    }),
-)
-
-rust_binary(
-    name = "form_test__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    compile_data = glob(
-        include = ["**"],
-        exclude = [
-            "**/* *",
-            "BUILD.bazel",
-            "BUILD",
-            "WORKSPACE.bazel",
-            "WORKSPACE",
-        ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "buf_redux",
-        "httparse",
-        "quick-error",
-        "safemem",
-        "server",
-        "twoway",
+        "@rules_rust_wasm_bindgen__buf_redux-0.8.4//:buf_redux",
+        "@rules_rust_wasm_bindgen__httparse-1.8.0//:httparse",
+        "@rules_rust_wasm_bindgen__log-0.4.17//:log",
+        "@rules_rust_wasm_bindgen__mime-0.3.16//:mime",
+        "@rules_rust_wasm_bindgen__mime_guess-2.0.4//:mime_guess",
+        "@rules_rust_wasm_bindgen__quick-error-1.2.3//:quick_error",
+        "@rules_rust_wasm_bindgen__rand-0.8.5//:rand",
+        "@rules_rust_wasm_bindgen__safemem-0.3.3//:safemem",
+        "@rules_rust_wasm_bindgen__tempfile-3.3.0//:tempfile",
+        "@rules_rust_wasm_bindgen__twoway-0.1.8//:twoway",
     ],
-    crate_root = "src/bin/form_test.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
-    tags = [
-        "cargo-bazel",
-        "manual",
-        "noclippy",
-        "norustfmt",
-    ],
-    version = "0.18.0",
-    deps = [
-        ":multipart",
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__buf_redux-0.8.4//:buf_redux",
-            "@rules_rust_wasm_bindgen__httparse-1.8.0//:httparse",
-            "@rules_rust_wasm_bindgen__log-0.4.17//:log",
-            "@rules_rust_wasm_bindgen__mime-0.3.16//:mime",
-            "@rules_rust_wasm_bindgen__mime_guess-2.0.4//:mime_guess",
-            "@rules_rust_wasm_bindgen__quick-error-1.2.3//:quick_error",
-            "@rules_rust_wasm_bindgen__rand-0.8.5//:rand",
-            "@rules_rust_wasm_bindgen__safemem-0.3.3//:safemem",
-            "@rules_rust_wasm_bindgen__tempfile-3.3.0//:tempfile",
-            "@rules_rust_wasm_bindgen__twoway-0.1.8//:twoway",
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.normalize-line-endings-0.3.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.normalize-line-endings-0.3.0.bazel
index 905a7ef..cb5e687 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.normalize-line-endings-0.3.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.normalize-line-endings-0.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "normalize_line_endings",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.num-integer-0.1.45.bazel b/wasm_bindgen/3rdparty/crates/BUILD.num-integer-0.1.45.bazel
index 8ec9810..a79e7de 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.num-integer-0.1.45.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.num-integer-0.1.45.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "num_integer",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.1.45",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__num-integer-0.1.45//:build_script_build",
-            "@rules_rust_wasm_bindgen__num-traits-0.2.15//:num_traits",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__num-integer-0.1.45//:build_script_build",
+        "@rules_rust_wasm_bindgen__num-traits-0.2.15//:num_traits",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "num-integer_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,29 +72,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.1.45",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "num-integer_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.num-traits-0.2.15.bazel b/wasm_bindgen/3rdparty/crates/BUILD.num-traits-0.2.15.bazel
index a2ec5ed..e52e7cb 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.num-traits-0.2.15.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.num-traits-0.2.15.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "num_traits",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.2.15",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__num-traits-0.2.15//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__num-traits-0.2.15//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "num-traits_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,29 +71,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.15",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__autocfg-1.1.0//:autocfg",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__autocfg-1.1.0//:autocfg",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "num-traits_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.num_cpus-1.15.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.num_cpus-1.15.0.bazel
index 2019621..32f434e 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.num_cpus-1.15.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.num_cpus-1.15.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "num_cpus",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "1.15.0",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
@@ -149,7 +110,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(not(windows))
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.num_threads-0.1.6.bazel b/wasm_bindgen/3rdparty/crates/BUILD.num_threads-0.1.6.bazel
index 20ba9ec..695a9ee 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.num_threads-0.1.6.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.num_threads-0.1.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "num_threads",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.1.6",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(target_os = "macos", target_os = "ios", target_os = "freebsd"))
         ],
@@ -104,7 +65,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(target_os = "macos", target_os = "ios", target_os = "freebsd"))
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.once_cell-1.17.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.once_cell-1.17.0.bazel
index 7487aa1..7da5d84 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.once_cell-1.17.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.once_cell-1.17.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "once_cell",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
@@ -52,29 +37,8 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,4 @@
         "norustfmt",
     ],
     version = "1.17.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.openssl-probe-0.1.5.bazel b/wasm_bindgen/3rdparty/crates/BUILD.openssl-probe-0.1.5.bazel
index 3b9d9d9..e94d498 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.openssl-probe-0.1.5.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.openssl-probe-0.1.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "openssl_probe",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.5",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.openssl-sys-0.9.80.bazel b/wasm_bindgen/3rdparty/crates/BUILD.openssl-sys-0.9.80.bazel
index a9ab2cc..2b37024 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.openssl-sys-0.9.80.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.openssl-sys-0.9.80.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "openssl_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
-
-        # User provided rustc_flags
         "--cfg=ossl101",
         "--cfg=ossl102",
         "--cfg=ossl102f",
@@ -94,9 +56,6 @@
     ],
     version = "0.9.80",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.percent-encoding-2.2.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.percent-encoding-2.2.0.bazel
index e9319c8..51ba0f6 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.percent-encoding-2.2.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.percent-encoding-2.2.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "percent_encoding",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "2.2.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel b/wasm_bindgen/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel
index a291b88..e8e0189 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.pkg-config-0.3.26.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "pkg_config",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.3.26",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.ppv-lite86-0.2.17.bazel b/wasm_bindgen/3rdparty/crates/BUILD.ppv-lite86-0.2.17.bazel
index e908d0e..f2a0dc3 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.ppv-lite86-0.2.17.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.ppv-lite86-0.2.17.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "ppv_lite86",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "simd",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "0.2.17",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.predicates-1.0.8.bazel b/wasm_bindgen/3rdparty/crates/BUILD.predicates-1.0.8.bazel
index c84f3de..174fa78 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.predicates-1.0.8.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.predicates-1.0.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "predicates",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "difference",
@@ -53,29 +38,8 @@
         "regex",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,13 +48,10 @@
     ],
     version = "1.0.8",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__difference-2.0.0//:difference",
-            "@rules_rust_wasm_bindgen__float-cmp-0.8.0//:float_cmp",
-            "@rules_rust_wasm_bindgen__normalize-line-endings-0.3.0//:normalize_line_endings",
-            "@rules_rust_wasm_bindgen__predicates-core-1.0.5//:predicates_core",
-            "@rules_rust_wasm_bindgen__regex-1.7.0//:regex",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__difference-2.0.0//:difference",
+        "@rules_rust_wasm_bindgen__float-cmp-0.8.0//:float_cmp",
+        "@rules_rust_wasm_bindgen__normalize-line-endings-0.3.0//:normalize_line_endings",
+        "@rules_rust_wasm_bindgen__predicates-core-1.0.5//:predicates_core",
+        "@rules_rust_wasm_bindgen__regex-1.7.0//:regex",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.predicates-2.1.5.bazel b/wasm_bindgen/3rdparty/crates/BUILD.predicates-2.1.5.bazel
index 2943417..3f14e11 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.predicates-2.1.5.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.predicates-2.1.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "predicates",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "diff",
-    ],
+    ),
+    crate_features = ["diff"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,11 +42,8 @@
     ],
     version = "2.1.5",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__difflib-0.4.0//:difflib",
-            "@rules_rust_wasm_bindgen__itertools-0.10.5//:itertools",
-            "@rules_rust_wasm_bindgen__predicates-core-1.0.5//:predicates_core",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__difflib-0.4.0//:difflib",
+        "@rules_rust_wasm_bindgen__itertools-0.10.5//:itertools",
+        "@rules_rust_wasm_bindgen__predicates-core-1.0.5//:predicates_core",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.predicates-core-1.0.5.bazel b/wasm_bindgen/3rdparty/crates/BUILD.predicates-core-1.0.5.bazel
index 40c8bf6..491d6ae 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.predicates-core-1.0.5.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.predicates-core-1.0.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "predicates_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.5",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.predicates-tree-1.0.7.bazel b/wasm_bindgen/3rdparty/crates/BUILD.predicates-tree-1.0.7.bazel
index 59b78e5..13f1e99 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.predicates-tree-1.0.7.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.predicates-tree-1.0.7.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "predicates_tree",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "1.0.7",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__predicates-core-1.0.5//:predicates_core",
-            "@rules_rust_wasm_bindgen__termtree-0.4.0//:termtree",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__predicates-core-1.0.5//:predicates_core",
+        "@rules_rust_wasm_bindgen__termtree-0.4.0//:termtree",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel b/wasm_bindgen/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel
index aa3e274..a0eb02e 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.proc-macro2-1.0.49.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,60 +20,26 @@
 
 rust_library(
     name = "proc_macro2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
         "span-locations",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
-
-        # User provided rustc_flags
         "--cfg=use_proc_macro",
     ],
     tags = [
@@ -90,34 +50,14 @@
     ],
     version = "1.0.49",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:build_script_build",
-            "@rules_rust_wasm_bindgen__unicode-ident-1.0.6//:unicode_ident",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:build_script_build",
+        "@rules_rust_wasm_bindgen__unicode-ident-1.0.6//:unicode_ident",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "proc-macro2_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -129,36 +69,15 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
-
-        # User provided rustc_flags
-        "--cfg=use_proc_macro",
     ],
     tags = [
         "cargo-bazel",
@@ -166,28 +85,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.49",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "proc-macro2_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.quick-error-1.2.3.bazel b/wasm_bindgen/3rdparty/crates/BUILD.quick-error-1.2.3.bazel
index 8a96429..4e8b169 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.quick-error-1.2.3.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.quick-error-1.2.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "quick_error",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.2.3",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.quote-1.0.23.bazel b/wasm_bindgen/3rdparty/crates/BUILD.quote-1.0.23.bazel
index b0d7e8a..14fb043 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.quote-1.0.23.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.quote-1.0.23.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "quote",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "proc-macro",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,34 +46,14 @@
     ],
     version = "1.0.23",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_wasm_bindgen__quote-1.0.23//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_wasm_bindgen__quote-1.0.23//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "quote_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "proc-macro",
@@ -124,32 +64,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +80,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.23",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "quote_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.rand-0.8.5.bazel b/wasm_bindgen/3rdparty/crates/BUILD.rand-0.8.5.bazel
index 2eee1cd..543db40 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.rand-0.8.5.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.rand-0.8.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "rand",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
@@ -55,29 +40,8 @@
         "std_rng",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,105 +50,66 @@
     ],
     version = "0.8.5",
     deps = [
+        "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",
+        "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",  # common dependency
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",  # common dependency
         ],
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__rand_chacha-0.3.1//:rand_chacha",
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.rand_chacha-0.3.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.rand_chacha-0.3.1.bazel
index 3236618..eb800d2 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.rand_chacha-0.3.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.rand_chacha-0.3.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "rand_chacha",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "std",
-    ],
+    ),
+    crate_features = ["std"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,10 +42,7 @@
     ],
     version = "0.3.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__ppv-lite86-0.2.17//:ppv_lite86",
-            "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__ppv-lite86-0.2.17//:ppv_lite86",
+        "@rules_rust_wasm_bindgen__rand_core-0.6.4//:rand_core",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.rand_core-0.6.4.bazel b/wasm_bindgen/3rdparty/crates/BUILD.rand_core-0.6.4.bazel
index 675ffcb..32e36fc 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.rand_core-0.6.4.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.rand_core-0.6.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "rand_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "getrandom",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,6 @@
     ],
     version = "0.6.4",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__getrandom-0.2.8//:getrandom",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__getrandom-0.2.8//:getrandom",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.rayon-1.6.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.rayon-1.6.1.bazel
index 399ab59..b63eebc 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.rayon-1.6.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.rayon-1.6.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "rayon",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "1.6.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__either-1.8.0//:either",
-            "@rules_rust_wasm_bindgen__rayon-core-1.10.1//:rayon_core",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__either-1.8.0//:either",
+        "@rules_rust_wasm_bindgen__rayon-core-1.10.1//:rayon_core",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.rayon-core-1.10.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.rayon-core-1.10.1.bazel
index c9adb81..bdeccc7 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.rayon-core-1.10.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.rayon-core-1.10.1.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "rayon_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,72 +42,32 @@
     ],
     version = "1.10.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__crossbeam-channel-0.5.6//:crossbeam_channel",
-            "@rules_rust_wasm_bindgen__crossbeam-deque-0.8.2//:crossbeam_deque",
-            "@rules_rust_wasm_bindgen__crossbeam-utils-0.8.14//:crossbeam_utils",
-            "@rules_rust_wasm_bindgen__num_cpus-1.15.0//:num_cpus",
-            "@rules_rust_wasm_bindgen__rayon-core-1.10.1//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__crossbeam-channel-0.5.6//:crossbeam_channel",
+        "@rules_rust_wasm_bindgen__crossbeam-deque-0.8.2//:crossbeam_deque",
+        "@rules_rust_wasm_bindgen__crossbeam-utils-0.8.14//:crossbeam_utils",
+        "@rules_rust_wasm_bindgen__num_cpus-1.15.0//:num_cpus",
+        "@rules_rust_wasm_bindgen__rayon-core-1.10.1//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "rayon-core_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2021",
     links = "rayon-core",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +76,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.10.1",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "rayon-core_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.redox_syscall-0.2.16.bazel b/wasm_bindgen/3rdparty/crates/BUILD.redox_syscall-0.2.16.bazel
index af18963..38e27ac 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.redox_syscall-0.2.16.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.redox_syscall-0.2.16.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "syscall",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "0.2.16",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__bitflags-1.3.2//:bitflags",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__bitflags-1.3.2//:bitflags",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.regex-1.7.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.regex-1.7.0.bazel
index fbcb1c2..6b18ac6 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.regex-1.7.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.regex-1.7.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "regex",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "aho-corasick",
         "default",
@@ -65,29 +50,8 @@
         "unicode-segment",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -96,11 +60,8 @@
     ],
     version = "1.7.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__aho-corasick-0.7.20//:aho_corasick",
-            "@rules_rust_wasm_bindgen__memchr-2.5.0//:memchr",
-            "@rules_rust_wasm_bindgen__regex-syntax-0.6.28//:regex_syntax",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__aho-corasick-0.7.20//:aho_corasick",
+        "@rules_rust_wasm_bindgen__memchr-2.5.0//:memchr",
+        "@rules_rust_wasm_bindgen__regex-syntax-0.6.28//:regex_syntax",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.regex-automata-0.1.10.bazel b/wasm_bindgen/3rdparty/crates/BUILD.regex-automata-0.1.10.bazel
index e5c9f12..3be5947 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.regex-automata-0.1.10.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.regex-automata-0.1.10.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "regex_automata",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.10",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel b/wasm_bindgen/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel
index 457c0e1..b3632e4 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.regex-syntax-0.6.28.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "regex_syntax",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "unicode",
@@ -57,29 +42,8 @@
         "unicode-segment",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -87,9 +51,4 @@
         "norustfmt",
     ],
     version = "0.6.28",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.remove_dir_all-0.5.3.bazel b/wasm_bindgen/3rdparty/crates/BUILD.remove_dir_all-0.5.3.bazel
index 9c8e5ad..5f5cfb3 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.remove_dir_all-0.5.3.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.remove_dir_all-0.5.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "remove_dir_all",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.5.3",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.rouille-3.6.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.rouille-3.6.1.bazel
index 4ead0a4..293e75b 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.rouille-3.6.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.rouille-3.6.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,23 @@
 
 rust_library(
     name = "rouille",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__serde_derive-1.0.152//:serde_derive",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@rules_rust_wasm_bindgen__serde_derive-1.0.152//:serde_derive",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,22 +44,19 @@
     ],
     version = "3.6.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__base64-0.13.1//:base64",
-            "@rules_rust_wasm_bindgen__chrono-0.4.23//:chrono",
-            "@rules_rust_wasm_bindgen__filetime-0.2.19//:filetime",
-            "@rules_rust_wasm_bindgen__multipart-0.18.0//:multipart",
-            "@rules_rust_wasm_bindgen__num_cpus-1.15.0//:num_cpus",
-            "@rules_rust_wasm_bindgen__percent-encoding-2.2.0//:percent_encoding",
-            "@rules_rust_wasm_bindgen__rand-0.8.5//:rand",
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",
-            "@rules_rust_wasm_bindgen__serde_json-1.0.91//:serde_json",
-            "@rules_rust_wasm_bindgen__sha1-0.10.5//:sha1",
-            "@rules_rust_wasm_bindgen__threadpool-1.8.1//:threadpool",
-            "@rules_rust_wasm_bindgen__time-0.3.17//:time",
-            "@rules_rust_wasm_bindgen__tiny_http-0.12.0//:tiny_http",
-            "@rules_rust_wasm_bindgen__url-2.3.1//:url",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__base64-0.13.1//:base64",
+        "@rules_rust_wasm_bindgen__chrono-0.4.23//:chrono",
+        "@rules_rust_wasm_bindgen__filetime-0.2.19//:filetime",
+        "@rules_rust_wasm_bindgen__multipart-0.18.0//:multipart",
+        "@rules_rust_wasm_bindgen__num_cpus-1.15.0//:num_cpus",
+        "@rules_rust_wasm_bindgen__percent-encoding-2.2.0//:percent_encoding",
+        "@rules_rust_wasm_bindgen__rand-0.8.5//:rand",
+        "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",
+        "@rules_rust_wasm_bindgen__serde_json-1.0.91//:serde_json",
+        "@rules_rust_wasm_bindgen__sha1-0.10.5//:sha1",
+        "@rules_rust_wasm_bindgen__threadpool-1.8.1//:threadpool",
+        "@rules_rust_wasm_bindgen__time-0.3.17//:time",
+        "@rules_rust_wasm_bindgen__tiny_http-0.12.0//:tiny_http",
+        "@rules_rust_wasm_bindgen__url-2.3.1//:url",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.rustc-demangle-0.1.21.bazel b/wasm_bindgen/3rdparty/crates/BUILD.rustc-demangle-0.1.21.bazel
index b59e633..9cbfeb8 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.rustc-demangle-0.1.21.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.rustc-demangle-0.1.21.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "rustc_demangle",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.21",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.ryu-1.0.12.bazel b/wasm_bindgen/3rdparty/crates/BUILD.ryu-1.0.12.bazel
index be2cccc..da4c872 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.ryu-1.0.12.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.ryu-1.0.12.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "ryu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.12",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.safemem-0.3.3.bazel b/wasm_bindgen/3rdparty/crates/BUILD.safemem-0.3.3.bazel
index d624818..59cc5c2 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.safemem-0.3.3.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.safemem-0.3.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "safemem",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "0.3.3",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.schannel-0.1.20.bazel b/wasm_bindgen/3rdparty/crates/BUILD.schannel-0.1.20.bazel
index 48e1073..1ea8a2f 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.schannel-0.1.20.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.schannel-0.1.20.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "schannel",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.1.20",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__lazy_static-1.4.0//:lazy_static",
-            "@rules_rust_wasm_bindgen__windows-sys-0.36.1//:windows_sys",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__lazy_static-1.4.0//:lazy_static",
+        "@rules_rust_wasm_bindgen__windows-sys-0.36.1//:windows_sys",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.scopeguard-1.1.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.scopeguard-1.1.0.bazel
index 6878fb6..373ffd4 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.scopeguard-1.1.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.scopeguard-1.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "scopeguard",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.scratch-1.0.3.bazel b/wasm_bindgen/3rdparty/crates/BUILD.scratch-1.0.3.bazel
index 4757be5..e890c9c 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.scratch-1.0.3.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.scratch-1.0.3.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "scratch",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "1.0.3",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__scratch-1.0.3//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__scratch-1.0.3//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "scratch_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.3",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "scratch_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.serde-1.0.152.bazel b/wasm_bindgen/3rdparty/crates/BUILD.serde-1.0.152.bazel
index ed9f60f..51c9ca1 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.serde-1.0.152.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.serde-1.0.152.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "serde",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
@@ -58,30 +39,11 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__serde_derive-1.0.152//:serde_derive",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@rules_rust_wasm_bindgen__serde_derive-1.0.152//:serde_derive",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -90,33 +52,13 @@
     ],
     version = "1.0.152",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__serde-1.0.152//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "serde_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "alloc",
         "default",
@@ -130,32 +72,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -164,28 +88,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.152",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "serde_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.serde_derive-1.0.152.bazel b/wasm_bindgen/3rdparty/crates/BUILD.serde_derive-1.0.152.bazel
index 212f9bb..c95da55 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.serde_derive-1.0.152.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.serde_derive-1.0.152.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -26,57 +20,21 @@
 
 rust_proc_macro(
     name = "serde_derive",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -85,71 +43,31 @@
     ],
     version = "1.0.152",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
-            "@rules_rust_wasm_bindgen__serde_derive-1.0.152//:build_script_build",
-            "@rules_rust_wasm_bindgen__syn-1.0.107//:syn",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
+        "@rules_rust_wasm_bindgen__serde_derive-1.0.152//:build_script_build",
+        "@rules_rust_wasm_bindgen__syn-1.0.107//:syn",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "serde_derive_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    srcs = glob(["**/*.rs"]),
+    crate_features = ["default"],
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -158,28 +76,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.152",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "serde_derive_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.serde_json-1.0.91.bazel b/wasm_bindgen/3rdparty/crates/BUILD.serde_json-1.0.91.bazel
index 2418d4e..cf6f572 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.serde_json-1.0.91.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.serde_json-1.0.91.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,58 +20,24 @@
 
 rust_library(
     name = "serde_json",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -86,36 +46,16 @@
     ],
     version = "1.0.91",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__itoa-1.0.5//:itoa",
-            "@rules_rust_wasm_bindgen__ryu-1.0.12//:ryu",
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",
-            "@rules_rust_wasm_bindgen__serde_json-1.0.91//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__itoa-1.0.5//:itoa",
+        "@rules_rust_wasm_bindgen__ryu-1.0.12//:ryu",
+        "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",
+        "@rules_rust_wasm_bindgen__serde_json-1.0.91//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "serde_json_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "std",
@@ -126,32 +66,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -160,28 +82,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.91",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "serde_json_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.sha1-0.10.5.bazel b/wasm_bindgen/3rdparty/crates/BUILD.sha1-0.10.5.bazel
index 25281a5..4e03682 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.sha1-0.10.5.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.sha1-0.10.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "sha1",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,95 +45,60 @@
     ],
     version = "0.10.5",
     deps = [
+        "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
+        "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
             "@rules_rust_wasm_bindgen__cpufeatures-0.2.5//:cpufeatures",  # cfg(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64"))
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",  # common dependency
         ],
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
-            "@rules_rust_wasm_bindgen__digest-0.10.6//:digest",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.socket2-0.4.7.bazel b/wasm_bindgen/3rdparty/crates/BUILD.socket2-0.4.7.bazel
index 76f2d05..e498084 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.socket2-0.4.7.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.socket2-0.4.7.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "socket2",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.4.7",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
@@ -146,7 +107,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.strsim-0.10.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.strsim-0.10.0.bazel
index c54cb1b..f31c806 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.strsim-0.10.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.strsim-0.10.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "strsim",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.10.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.syn-1.0.107.bazel b/wasm_bindgen/3rdparty/crates/BUILD.syn-1.0.107.bazel
index fc38c6e..0d4e04e 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.syn-1.0.107.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.syn-1.0.107.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "syn",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "clone-impls",
         "default",
@@ -63,29 +44,8 @@
         "visit",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -94,36 +54,16 @@
     ],
     version = "1.0.107",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
-            "@rules_rust_wasm_bindgen__syn-1.0.107//:build_script_build",
-            "@rules_rust_wasm_bindgen__unicode-ident-1.0.6//:unicode_ident",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
+        "@rules_rust_wasm_bindgen__syn-1.0.107//:build_script_build",
+        "@rules_rust_wasm_bindgen__unicode-ident-1.0.6//:unicode_ident",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "syn_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "clone-impls",
         "default",
@@ -142,32 +82,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -176,28 +98,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.0.107",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "syn_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.tempfile-3.3.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.tempfile-3.3.0.bazel
index 0a4d139..d0888eb 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.tempfile-3.3.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.tempfile-3.3.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tempfile",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,149 +41,79 @@
     ],
     version = "3.3.0",
     deps = [
+        "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
+        "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",
+        "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:wasm32-wasi": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",  # common dependency
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",  # common dependency
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(any(unix, target_os = "wasi"))
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",  # common dependency
         ],
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
-            "@rules_rust_wasm_bindgen__fastrand-1.8.0//:fastrand",
-            "@rules_rust_wasm_bindgen__remove_dir_all-0.5.3//:remove_dir_all",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.termcolor-1.1.3.bazel b/wasm_bindgen/3rdparty/crates/BUILD.termcolor-1.1.3.bazel
index 09dd6e3..d7195f2 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.termcolor-1.1.3.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.termcolor-1.1.3.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "termcolor",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "1.1.3",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@rules_rust_wasm_bindgen__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@rules_rust_wasm_bindgen__winapi-util-0.1.5//:winapi_util",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.termtree-0.4.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.termtree-0.4.0.bazel
index 90c0057..bbb847a 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.termtree-0.4.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.termtree-0.4.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "termtree",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.4.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.threadpool-1.8.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.threadpool-1.8.1.bazel
index 430d243..6a4c61d 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.threadpool-1.8.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.threadpool-1.8.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "threadpool",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,6 @@
     ],
     version = "1.8.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__num_cpus-1.15.0//:num_cpus",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__num_cpus-1.15.0//:num_cpus",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.time-0.3.17.bazel b/wasm_bindgen/3rdparty/crates/BUILD.time-0.3.17.bazel
index 5c5c06e..0df7f13 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.time-0.3.17.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.time-0.3.17.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "time",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
@@ -52,29 +37,8 @@
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -83,124 +47,85 @@
     ],
     version = "0.3.17",
     deps = [
+        "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",
+        "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",
     ] + select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-linux-android": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-linux-androideabi": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-apple-darwin": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-linux-android": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-freebsd": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-darwin": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-apple-ios": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-linux-android": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(target_family = "unix")
             "@rules_rust_wasm_bindgen__num_threads-0.1.6//:num_threads",  # cfg(target_family = "unix")
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",  # common dependency
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",  # common dependency
         ],
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__serde-1.0.152//:serde",
-            "@rules_rust_wasm_bindgen__time-core-0.1.0//:time_core",
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.time-core-0.1.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.time-core-0.1.0.bazel
index 897cd41..5dd5ae7 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.time-core-0.1.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.time-core-0.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "time_core",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2021",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.tiny_http-0.12.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.tiny_http-0.12.0.bazel
index a14bc3b..9763785 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.tiny_http-0.12.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.tiny_http-0.12.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tiny_http",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,12 +41,9 @@
     ],
     version = "0.12.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__ascii-1.1.0//:ascii",
-            "@rules_rust_wasm_bindgen__chunked_transfer-1.4.1//:chunked_transfer",
-            "@rules_rust_wasm_bindgen__httpdate-1.0.2//:httpdate",
-            "@rules_rust_wasm_bindgen__log-0.4.17//:log",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__ascii-1.1.0//:ascii",
+        "@rules_rust_wasm_bindgen__chunked_transfer-1.4.1//:chunked_transfer",
+        "@rules_rust_wasm_bindgen__httpdate-1.0.2//:httpdate",
+        "@rules_rust_wasm_bindgen__log-0.4.17//:log",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.tinyvec-1.6.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.tinyvec-1.6.0.bazel
index 90d970e..6b4ba69 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.tinyvec-1.6.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.tinyvec-1.6.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "tinyvec",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "alloc",
         "default",
         "tinyvec_macros",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,9 +46,6 @@
     ],
     version = "1.6.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__tinyvec_macros-0.1.0//:tinyvec_macros",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__tinyvec_macros-0.1.0//:tinyvec_macros",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.tinyvec_macros-0.1.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.tinyvec_macros-0.1.0.bazel
index 5ba0b71..cddb899 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.tinyvec_macros-0.1.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.tinyvec_macros-0.1.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "tinyvec_macros",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.twoway-0.1.8.bazel b/wasm_bindgen/3rdparty/crates/BUILD.twoway-0.1.8.bazel
index 5787fc1..47159f9 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.twoway-0.1.8.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.twoway-0.1.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "twoway",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "use_std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.1.8",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__memchr-2.5.0//:memchr",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__memchr-2.5.0//:memchr",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.typenum-1.16.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.typenum-1.16.0.bazel
index 850d192..200b50d 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.typenum-1.16.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.typenum-1.16.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "typenum",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "1.16.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__typenum-1.16.0//:build_script_main",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__typenum-1.16.0//:build_script_main",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "typenum_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_main",
     crate_root = "build/main.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "1.16.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_main",
     actual = "typenum_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.unicase-2.6.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.unicase-2.6.0.bazel
index 79f3a84..ef4f2c1 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.unicase-2.6.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.unicase-2.6.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,57 +20,21 @@
 
 rust_library(
     name = "unicase",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
-
-        # User provided rustc_flags
         "--cfg=__unicase__iter_cmp",
         "--cfg=__unicase__defauler_hasher",
     ],
@@ -88,72 +46,28 @@
     ],
     version = "2.6.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__unicase-2.6.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__unicase-2.6.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "unicase_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
-
-        # User provided rustc_flags
-        "--cfg=__unicase__iter_cmp",
-        "--cfg=__unicase__defauler_hasher",
     ],
     tags = [
         "cargo-bazel",
@@ -161,29 +75,15 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "2.6.0",
     visibility = ["//visibility:private"],
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__version_check-0.9.4//:version_check",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__version_check-0.9.4//:version_check",
+    ],
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "unicase_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.unicode-bidi-0.3.8.bazel b/wasm_bindgen/3rdparty/crates/BUILD.unicode-bidi-0.3.8.bazel
index 669555b..cc55b30 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.unicode-bidi-0.3.8.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.unicode-bidi-0.3.8.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,25 @@
 
 rust_library(
     name = "unicode_bidi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "hardcoded-data",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,4 @@
         "norustfmt",
     ],
     version = "0.3.8",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel b/wasm_bindgen/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel
index 86ce14e..a27db47 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.unicode-ident-1.0.6.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "unicode_ident",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.0.6",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.unicode-normalization-0.1.22.bazel b/wasm_bindgen/3rdparty/crates/BUILD.unicode-normalization-0.1.22.bazel
index 01bb83b..0c92c65 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.unicode-normalization-0.1.22.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.unicode-normalization-0.1.22.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "unicode_normalization",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "0.1.22",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__tinyvec-1.6.0//:tinyvec",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__tinyvec-1.6.0//:tinyvec",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.unicode-segmentation-1.10.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.unicode-segmentation-1.10.0.bazel
index 2da6f41..a72e45c 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.unicode-segmentation-1.10.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.unicode-segmentation-1.10.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "unicode_segmentation",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "1.10.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.unicode-width-0.1.10.bazel b/wasm_bindgen/3rdparty/crates/BUILD.unicode-width-0.1.10.bazel
index ac1d8dc..577ce69 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.unicode-width-0.1.10.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.unicode-width-0.1.10.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "unicode_width",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,9 +41,4 @@
         "norustfmt",
     ],
     version = "0.1.10",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.url-2.3.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.url-2.3.1.bazel
index d3721e1..4a06ad2 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.url-2.3.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.url-2.3.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "url",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "default",
-    ],
+    ),
+    crate_features = ["default"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,11 +42,8 @@
     ],
     version = "2.3.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__form_urlencoded-1.1.0//:form_urlencoded",
-            "@rules_rust_wasm_bindgen__idna-0.3.0//:idna",
-            "@rules_rust_wasm_bindgen__percent-encoding-2.2.0//:percent_encoding",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__form_urlencoded-1.1.0//:form_urlencoded",
+        "@rules_rust_wasm_bindgen__idna-0.3.0//:idna",
+        "@rules_rust_wasm_bindgen__percent-encoding-2.2.0//:percent_encoding",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.vcpkg-0.2.15.bazel b/wasm_bindgen/3rdparty/crates/BUILD.vcpkg-0.2.15.bazel
index 75b1322..984852b 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.vcpkg-0.2.15.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.vcpkg-0.2.15.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "vcpkg",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.2.15",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.version_check-0.9.4.bazel b/wasm_bindgen/3rdparty/crates/BUILD.version_check-0.9.4.bazel
index af0a7ed..964a1fb 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.version_check-0.9.4.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.version_check-0.9.4.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "version_check",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.9.4",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wait-timeout-0.2.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wait-timeout-0.2.0.bazel
index cd7ba44..b14626d 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wait-timeout-0.2.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wait-timeout-0.2.0.bazel
@@ -6,11 +6,8 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
-    "rust_binary",
     "rust_library",
 )
 
@@ -22,56 +19,20 @@
 
 rust_library(
     name = "wait_timeout",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.2.0",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-apple-darwin": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
@@ -138,379 +98,6 @@
         "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
             "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
         ],
-        "//conditions:default": [
-        ],
-    }),
-)
-
-rust_binary(
-    name = "exit__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    compile_data = glob(
-        include = ["**"],
-        exclude = [
-            "**/* *",
-            "BUILD.bazel",
-            "BUILD",
-            "WORKSPACE.bazel",
-            "WORKSPACE",
-        ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
-    crate_root = "src/bin/exit.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
-    tags = [
-        "cargo-bazel",
-        "manual",
-        "noclippy",
-        "norustfmt",
-    ],
-    version = "0.2.0",
-    deps = [
-        ":wait_timeout",
-    ] + select({
-        "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:i686-linux-android": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "//conditions:default": [
-        ],
-    }),
-)
-
-rust_binary(
-    name = "reader__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    compile_data = glob(
-        include = ["**"],
-        exclude = [
-            "**/* *",
-            "BUILD.bazel",
-            "BUILD",
-            "WORKSPACE.bazel",
-            "WORKSPACE",
-        ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
-    crate_root = "src/bin/reader.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
-    tags = [
-        "cargo-bazel",
-        "manual",
-        "noclippy",
-        "norustfmt",
-    ],
-    version = "0.2.0",
-    deps = [
-        ":wait_timeout",
-    ] + select({
-        "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:i686-linux-android": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "//conditions:default": [
-        ],
-    }),
-)
-
-rust_binary(
-    name = "sleep__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    compile_data = glob(
-        include = ["**"],
-        exclude = [
-            "**/* *",
-            "BUILD.bazel",
-            "BUILD",
-            "WORKSPACE.bazel",
-            "WORKSPACE",
-        ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
-    crate_root = "src/bin/sleep.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
-    tags = [
-        "cargo-bazel",
-        "manual",
-        "noclippy",
-        "norustfmt",
-    ],
-    version = "0.2.0",
-    deps = [
-        ":wait_timeout",
-    ] + select({
-        "@rules_rust//rust/platform:aarch64-apple-darwin": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:aarch64-apple-ios": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:aarch64-apple-ios-sim": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:aarch64-linux-android": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:armv7-linux-androideabi": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:i686-apple-darwin": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:i686-linux-android": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:i686-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:i686-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:x86_64-apple-darwin": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:x86_64-apple-ios": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:x86_64-linux-android": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:x86_64-unknown-freebsd": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [
-            "@rules_rust_wasm_bindgen__libc-0.2.139//:libc",  # cfg(unix)
-        ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.walrus-0.19.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.walrus-0.19.0.bazel
index cf7333f..95893b4 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.walrus-0.19.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.walrus-0.19.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,59 +19,27 @@
 
 rust_library(
     name = "walrus",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "parallel",
         "rayon",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__walrus-macro-0.19.0//:walrus_macro",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@rules_rust_wasm_bindgen__walrus-macro-0.19.0//:walrus_macro",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -82,14 +48,11 @@
     ],
     version = "0.19.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
-            "@rules_rust_wasm_bindgen__id-arena-2.2.1//:id_arena",
-            "@rules_rust_wasm_bindgen__leb128-0.2.5//:leb128",
-            "@rules_rust_wasm_bindgen__log-0.4.17//:log",
-            "@rules_rust_wasm_bindgen__rayon-1.6.1//:rayon",
-            "@rules_rust_wasm_bindgen__wasmparser-0.77.0//:wasmparser",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
+        "@rules_rust_wasm_bindgen__id-arena-2.2.1//:id_arena",
+        "@rules_rust_wasm_bindgen__leb128-0.2.5//:leb128",
+        "@rules_rust_wasm_bindgen__log-0.4.17//:log",
+        "@rules_rust_wasm_bindgen__rayon-1.6.1//:rayon",
+        "@rules_rust_wasm_bindgen__wasmparser-0.77.0//:wasmparser",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.walrus-macro-0.19.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.walrus-macro-0.19.0.bazel
index 626d129..05cdc2c 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.walrus-macro-0.19.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.walrus-macro-0.19.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,56 +19,20 @@
 
 rust_proc_macro(
     name = "walrus_macro",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,12 +41,9 @@
     ],
     version = "0.19.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__heck-0.3.3//:heck",
-            "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
-            "@rules_rust_wasm_bindgen__syn-1.0.107//:syn",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__heck-0.3.3//:heck",
+        "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
+        "@rules_rust_wasm_bindgen__syn-1.0.107//:syn",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel
index ca7d597..1f160b0 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasi-0.11.0+wasi-snapshot-preview1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "wasi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,9 +44,4 @@
         "norustfmt",
     ],
     version = "0.11.0+wasi-snapshot-preview1",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-0.2.83.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-0.2.83.bazel
index 73b4fc3..c8bc962 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-0.2.83.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-0.2.83.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,60 +20,28 @@
 
 rust_library(
     name = "wasm_bindgen",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "spans",
         "std",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
     proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__wasm-bindgen-macro-0.2.83//:wasm_bindgen_macro",
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
+        "@rules_rust_wasm_bindgen__wasm-bindgen-macro-0.2.83//:wasm_bindgen_macro",
     ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -88,34 +50,14 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
-            "@rules_rust_wasm_bindgen__wasm-bindgen-0.2.83//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__cfg-if-1.0.0//:cfg_if",
+        "@rules_rust_wasm_bindgen__wasm-bindgen-0.2.83//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "wasm-bindgen_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "default",
         "spans",
@@ -127,32 +69,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -161,28 +85,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.83",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "wasm-bindgen_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-backend-0.2.83.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-backend-0.2.83.bazel
index 1933f88..ea8eefd 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-backend-0.2.83.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-backend-0.2.83.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "wasm_bindgen_backend",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "spans",
-    ],
+    ),
+    crate_features = ["spans"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,15 +42,12 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__bumpalo-3.11.1//:bumpalo",
-            "@rules_rust_wasm_bindgen__log-0.4.17//:log",
-            "@rules_rust_wasm_bindgen__once_cell-1.17.0//:once_cell",
-            "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
-            "@rules_rust_wasm_bindgen__syn-1.0.107//:syn",
-            "@rules_rust_wasm_bindgen__wasm-bindgen-shared-0.2.83//:wasm_bindgen_shared",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__bumpalo-3.11.1//:bumpalo",
+        "@rules_rust_wasm_bindgen__log-0.4.17//:log",
+        "@rules_rust_wasm_bindgen__once_cell-1.17.0//:once_cell",
+        "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
+        "@rules_rust_wasm_bindgen__syn-1.0.107//:syn",
+        "@rules_rust_wasm_bindgen__wasm-bindgen-shared-0.2.83//:wasm_bindgen_shared",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-cli-support-0.2.83.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-cli-support-0.2.83.bazel
index bad736d..430bd68 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-cli-support-0.2.83.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-cli-support-0.2.83.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wasm_bindgen_cli_support",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,24 +41,21 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
-            "@rules_rust_wasm_bindgen__base64-0.9.3//:base64",
-            "@rules_rust_wasm_bindgen__log-0.4.17//:log",
-            "@rules_rust_wasm_bindgen__rustc-demangle-0.1.21//:rustc_demangle",
-            "@rules_rust_wasm_bindgen__serde_json-1.0.91//:serde_json",
-            "@rules_rust_wasm_bindgen__tempfile-3.3.0//:tempfile",
-            "@rules_rust_wasm_bindgen__walrus-0.19.0//:walrus",
-            "@rules_rust_wasm_bindgen__wasm-bindgen-externref-xform-0.2.83//:wasm_bindgen_externref_xform",
-            "@rules_rust_wasm_bindgen__wasm-bindgen-multi-value-xform-0.2.83//:wasm_bindgen_multi_value_xform",
-            "@rules_rust_wasm_bindgen__wasm-bindgen-shared-0.2.83//:wasm_bindgen_shared",
-            "@rules_rust_wasm_bindgen__wasm-bindgen-threads-xform-0.2.83//:wasm_bindgen_threads_xform",
-            "@rules_rust_wasm_bindgen__wasm-bindgen-wasm-conventions-0.2.83//:wasm_bindgen_wasm_conventions",
-            "@rules_rust_wasm_bindgen__wasm-bindgen-wasm-interpreter-0.2.83//:wasm_bindgen_wasm_interpreter",
-            "@rules_rust_wasm_bindgen__wit-text-0.8.0//:wit_text",
-            "@rules_rust_wasm_bindgen__wit-validator-0.2.1//:wit_validator",
-            "@rules_rust_wasm_bindgen__wit-walrus-0.6.0//:wit_walrus",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
+        "@rules_rust_wasm_bindgen__base64-0.9.3//:base64",
+        "@rules_rust_wasm_bindgen__log-0.4.17//:log",
+        "@rules_rust_wasm_bindgen__rustc-demangle-0.1.21//:rustc_demangle",
+        "@rules_rust_wasm_bindgen__serde_json-1.0.91//:serde_json",
+        "@rules_rust_wasm_bindgen__tempfile-3.3.0//:tempfile",
+        "@rules_rust_wasm_bindgen__walrus-0.19.0//:walrus",
+        "@rules_rust_wasm_bindgen__wasm-bindgen-externref-xform-0.2.83//:wasm_bindgen_externref_xform",
+        "@rules_rust_wasm_bindgen__wasm-bindgen-multi-value-xform-0.2.83//:wasm_bindgen_multi_value_xform",
+        "@rules_rust_wasm_bindgen__wasm-bindgen-shared-0.2.83//:wasm_bindgen_shared",
+        "@rules_rust_wasm_bindgen__wasm-bindgen-threads-xform-0.2.83//:wasm_bindgen_threads_xform",
+        "@rules_rust_wasm_bindgen__wasm-bindgen-wasm-conventions-0.2.83//:wasm_bindgen_wasm_conventions",
+        "@rules_rust_wasm_bindgen__wasm-bindgen-wasm-interpreter-0.2.83//:wasm_bindgen_wasm_interpreter",
+        "@rules_rust_wasm_bindgen__wit-text-0.8.0//:wit_text",
+        "@rules_rust_wasm_bindgen__wit-validator-0.2.1//:wit_validator",
+        "@rules_rust_wasm_bindgen__wit-walrus-0.6.0//:wit_walrus",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-externref-xform-0.2.83.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-externref-xform-0.2.83.bazel
index 67dcef9..ba76fa7 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-externref-xform-0.2.83.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-externref-xform-0.2.83.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wasm_bindgen_externref_xform",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
-            "@rules_rust_wasm_bindgen__walrus-0.19.0//:walrus",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
+        "@rules_rust_wasm_bindgen__walrus-0.19.0//:walrus",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-macro-0.2.83.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-macro-0.2.83.bazel
index ad38fe9..5b4adaa 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-macro-0.2.83.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-macro-0.2.83.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_proc_macro",
@@ -21,57 +19,21 @@
 
 rust_proc_macro(
     name = "wasm_bindgen_macro",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "spans",
-    ],
+    ),
+    crate_features = ["spans"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,10 +42,7 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
-            "@rules_rust_wasm_bindgen__wasm-bindgen-macro-support-0.2.83//:wasm_bindgen_macro_support",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
+        "@rules_rust_wasm_bindgen__wasm-bindgen-macro-support-0.2.83//:wasm_bindgen_macro_support",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-macro-support-0.2.83.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-macro-support-0.2.83.bazel
index fe928f4..2f4b7a6 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-macro-support-0.2.83.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-macro-support-0.2.83.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,57 +19,21 @@
 
 rust_library(
     name = "wasm_bindgen_macro_support",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-        "spans",
-    ],
+    ),
+    crate_features = ["spans"],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -80,13 +42,10 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
-            "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
-            "@rules_rust_wasm_bindgen__syn-1.0.107//:syn",
-            "@rules_rust_wasm_bindgen__wasm-bindgen-backend-0.2.83//:wasm_bindgen_backend",
-            "@rules_rust_wasm_bindgen__wasm-bindgen-shared-0.2.83//:wasm_bindgen_shared",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__proc-macro2-1.0.49//:proc_macro2",
+        "@rules_rust_wasm_bindgen__quote-1.0.23//:quote",
+        "@rules_rust_wasm_bindgen__syn-1.0.107//:syn",
+        "@rules_rust_wasm_bindgen__wasm-bindgen-backend-0.2.83//:wasm_bindgen_backend",
+        "@rules_rust_wasm_bindgen__wasm-bindgen-shared-0.2.83//:wasm_bindgen_shared",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-multi-value-xform-0.2.83.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-multi-value-xform-0.2.83.bazel
index 440e8dd..e7cfb41 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-multi-value-xform-0.2.83.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-multi-value-xform-0.2.83.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wasm_bindgen_multi_value_xform",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
-            "@rules_rust_wasm_bindgen__walrus-0.19.0//:walrus",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
+        "@rules_rust_wasm_bindgen__walrus-0.19.0//:walrus",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-shared-0.2.83.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-shared-0.2.83.bazel
index f382f3e..06b5ec8 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-shared-0.2.83.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-shared-0.2.83.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "wasm_bindgen_shared",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,68 +42,28 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__wasm-bindgen-shared-0.2.83//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__wasm-bindgen-shared-0.2.83//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "wasm-bindgen-shared_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
     links = "wasm_bindgen",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -154,28 +72,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.2.83",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "wasm-bindgen-shared_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-threads-xform-0.2.83.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-threads-xform-0.2.83.bazel
index f2c06b9..7ca87ae 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-threads-xform-0.2.83.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-threads-xform-0.2.83.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wasm_bindgen_threads_xform",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
-            "@rules_rust_wasm_bindgen__walrus-0.19.0//:walrus",
-            "@rules_rust_wasm_bindgen__wasm-bindgen-wasm-conventions-0.2.83//:wasm_bindgen_wasm_conventions",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
+        "@rules_rust_wasm_bindgen__walrus-0.19.0//:walrus",
+        "@rules_rust_wasm_bindgen__wasm-bindgen-wasm-conventions-0.2.83//:wasm_bindgen_wasm_conventions",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-wasm-conventions-0.2.83.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-wasm-conventions-0.2.83.bazel
index abf1931..c71b07f 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-wasm-conventions-0.2.83.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-wasm-conventions-0.2.83.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wasm_bindgen_wasm_conventions",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
-            "@rules_rust_wasm_bindgen__walrus-0.19.0//:walrus",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
+        "@rules_rust_wasm_bindgen__walrus-0.19.0//:walrus",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-wasm-interpreter-0.2.83.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-wasm-interpreter-0.2.83.bazel
index faa5fc8..63a16c2 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-wasm-interpreter-0.2.83.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasm-bindgen-wasm-interpreter-0.2.83.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wasm_bindgen_wasm_interpreter",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,12 +41,9 @@
     ],
     version = "0.2.83",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
-            "@rules_rust_wasm_bindgen__log-0.4.17//:log",
-            "@rules_rust_wasm_bindgen__walrus-0.19.0//:walrus",
-            "@rules_rust_wasm_bindgen__wasm-bindgen-wasm-conventions-0.2.83//:wasm_bindgen_wasm_conventions",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
+        "@rules_rust_wasm_bindgen__log-0.4.17//:log",
+        "@rules_rust_wasm_bindgen__walrus-0.19.0//:walrus",
+        "@rules_rust_wasm_bindgen__wasm-bindgen-wasm-conventions-0.2.83//:wasm_bindgen_wasm_conventions",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasmparser-0.59.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasmparser-0.59.0.bazel
index 80e0cac..8dfa15d 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasmparser-0.59.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasmparser-0.59.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wasmparser",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.59.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasmparser-0.77.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasmparser-0.77.0.bazel
index c60496d..477e361 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasmparser-0.77.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasmparser-0.77.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wasmparser",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.77.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasmparser-0.83.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasmparser-0.83.0.bazel
index d0987b7..e09006e 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasmparser-0.83.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasmparser-0.83.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wasmparser",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,9 +40,4 @@
         "norustfmt",
     ],
     version = "0.83.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wasmprinter-0.2.33.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wasmprinter-0.2.33.bazel
index d77b56f..bbb12dd 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wasmprinter-0.2.33.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wasmprinter-0.2.33.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wasmprinter",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.2.33",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
-            "@rules_rust_wasm_bindgen__wasmparser-0.83.0//:wasmparser",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
+        "@rules_rust_wasm_bindgen__wasmparser-0.83.0//:wasmparser",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wast-21.0.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wast-21.0.0.bazel
index 3cc97cc..6f9ef79 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wast-21.0.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wast-21.0.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,58 +19,24 @@
 
 rust_library(
     name = "wast",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "default",
         "wasm-module",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -81,9 +45,6 @@
     ],
     version = "21.0.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__leb128-0.2.5//:leb128",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__leb128-0.2.5//:leb128",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.winapi-0.3.9.bazel b/wasm_bindgen/3rdparty/crates/BUILD.winapi-0.3.9.bazel
index edf4d97..dc8f3d8 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.winapi-0.3.9.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.winapi-0.3.9.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,30 +20,17 @@
 
 rust_library(
     name = "winapi",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "activation",
         "combaseapi",
@@ -77,29 +58,8 @@
         "ws2tcpip",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -108,33 +68,13 @@
     ],
     version = "0.3.9",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__winapi-0.3.9//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__winapi-0.3.9//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    srcs = glob(["**/*.rs"]),
     crate_features = [
         "activation",
         "combaseapi",
@@ -167,32 +107,14 @@
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -201,28 +123,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.3.9",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
index 55a67ac..55081ac 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.winapi-i686-pc-windows-gnu-0.4.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_i686_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__winapi-i686-pc-windows-gnu-0.4.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__winapi-i686-pc-windows-gnu-0.4.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-i686-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-i686-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel b/wasm_bindgen/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel
index b5e27b8..79bad4d 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.winapi-util-0.1.5.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "winapi_util",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -78,8 +40,7 @@
         "norustfmt",
     ],
     version = "0.1.5",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
@@ -89,7 +50,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@rules_rust_wasm_bindgen__winapi-0.3.9//:winapi",  # cfg(windows)
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
index a0b18ff..fe5406a 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.winapi-x86_64-pc-windows-gnu-0.4.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "winapi_x86_64_pc_windows_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.4.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__winapi-x86_64-pc-windows-gnu-0.4.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__winapi-x86_64-pc-windows-gnu-0.4.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "winapi-x86_64-pc-windows-gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2015",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.4.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "winapi-x86_64-pc-windows-gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.windows-sys-0.36.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.windows-sys-0.36.1.bazel
index 683925b..8497b00 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.windows-sys-0.36.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.windows-sys-0.36.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "windows_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "Win32",
         "Win32_Foundation",
@@ -58,29 +43,8 @@
         "default",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -88,8 +52,7 @@
         "norustfmt",
     ],
     version = "0.36.1",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@rules_rust_wasm_bindgen__windows_aarch64_msvc-0.36.1//:windows_aarch64_msvc",  # aarch64-pc-windows-msvc
         ],
@@ -99,7 +62,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@rules_rust_wasm_bindgen__windows_x86_64_msvc-0.36.1//:windows_x86_64_msvc",  # x86_64-pc-windows-msvc
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.windows-sys-0.42.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.windows-sys-0.42.0.bazel
index c6b6740..471dd2f 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.windows-sys-0.42.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.windows-sys-0.42.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,30 +19,17 @@
 
 rust_library(
     name = "windows_sys",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     crate_features = [
         "Win32",
         "Win32_Foundation",
@@ -53,29 +38,8 @@
         "default",
     ],
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -83,8 +47,7 @@
         "norustfmt",
     ],
     version = "0.42.0",
-    deps = [
-    ] + select({
+    deps = select({
         "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [
             "@rules_rust_wasm_bindgen__windows_aarch64_msvc-0.42.0//:windows_aarch64_msvc",  # aarch64-pc-windows-msvc
         ],
@@ -94,7 +57,6 @@
         "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [
             "@rules_rust_wasm_bindgen__windows_x86_64_msvc-0.42.0//:windows_x86_64_msvc",  # x86_64-pc-windows-msvc
         ],
-        "//conditions:default": [
-        ],
+        "//conditions:default": [],
     }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.windows_aarch64_gnullvm-0.42.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.windows_aarch64_gnullvm-0.42.0.bazel
index 4531cad..b8b625b 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.windows_aarch64_gnullvm-0.42.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.windows_aarch64_gnullvm-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_aarch64_gnullvm",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__windows_aarch64_gnullvm-0.42.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__windows_aarch64_gnullvm-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_aarch64_gnullvm_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_aarch64_gnullvm_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.windows_aarch64_msvc-0.36.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.windows_aarch64_msvc-0.36.1.bazel
index 0dd7fef..1b3ab11 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.windows_aarch64_msvc-0.36.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.windows_aarch64_msvc-0.36.1.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_aarch64_msvc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.36.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__windows_aarch64_msvc-0.36.1//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__windows_aarch64_msvc-0.36.1//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_aarch64_msvc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.36.1",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_aarch64_msvc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.windows_aarch64_msvc-0.42.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.windows_aarch64_msvc-0.42.0.bazel
index b87321d..ff6a0b5 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.windows_aarch64_msvc-0.42.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.windows_aarch64_msvc-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_aarch64_msvc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__windows_aarch64_msvc-0.42.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__windows_aarch64_msvc-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_aarch64_msvc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_aarch64_msvc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_gnu-0.36.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_gnu-0.36.1.bazel
index 4bbba64..ef45d97 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_gnu-0.36.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_gnu-0.36.1.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_i686_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.36.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__windows_i686_gnu-0.36.1//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__windows_i686_gnu-0.36.1//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_i686_gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.36.1",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_i686_gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_gnu-0.42.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_gnu-0.42.0.bazel
index 09a270e..4884196 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_gnu-0.42.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_gnu-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_i686_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__windows_i686_gnu-0.42.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__windows_i686_gnu-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_i686_gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_i686_gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_msvc-0.36.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_msvc-0.36.1.bazel
index d836d1a..fe1c504 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_msvc-0.36.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_msvc-0.36.1.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_i686_msvc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.36.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__windows_i686_msvc-0.36.1//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__windows_i686_msvc-0.36.1//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_i686_msvc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.36.1",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_i686_msvc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_msvc-0.42.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_msvc-0.42.0.bazel
index d0d11fa..89ce2f0 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_msvc-0.42.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.windows_i686_msvc-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_i686_msvc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__windows_i686_msvc-0.42.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__windows_i686_msvc-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_i686_msvc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_i686_msvc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_gnu-0.36.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_gnu-0.36.1.bazel
index 836cc48..fce3010 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_gnu-0.36.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_gnu-0.36.1.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_x86_64_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.36.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__windows_x86_64_gnu-0.36.1//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__windows_x86_64_gnu-0.36.1//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_x86_64_gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.36.1",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_x86_64_gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_gnu-0.42.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_gnu-0.42.0.bazel
index 2ff6312..80d2860 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_gnu-0.42.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_gnu-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_x86_64_gnu",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__windows_x86_64_gnu-0.42.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__windows_x86_64_gnu-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_x86_64_gnu_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_x86_64_gnu_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_gnullvm-0.42.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_gnullvm-0.42.0.bazel
index 465fb10..97fb17c 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_gnullvm-0.42.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_gnullvm-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_x86_64_gnullvm",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__windows_x86_64_gnullvm-0.42.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__windows_x86_64_gnullvm-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_x86_64_gnullvm_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_x86_64_gnullvm_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_msvc-0.36.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_msvc-0.36.1.bazel
index 25667fc..2e47edc 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_msvc-0.36.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_msvc-0.36.1.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_x86_64_msvc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.36.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__windows_x86_64_msvc-0.36.1//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__windows_x86_64_msvc-0.36.1//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_x86_64_msvc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.36.1",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_x86_64_msvc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_msvc-0.42.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_msvc-0.42.0.bazel
index 2b1edbb..d611cd6 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_msvc-0.42.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.windows_x86_64_msvc-0.42.0.bazel
@@ -6,13 +6,7 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-load(
-    "@rules_rust//cargo:defs.bzl",
-    "cargo_build_script",
-)
-
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
+load("@rules_rust//cargo:defs.bzl", "cargo_build_script")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -26,56 +20,20 @@
 
 rust_library(
     name = "windows_x86_64_msvc",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -84,67 +42,27 @@
     ],
     version = "0.42.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__windows_x86_64_msvc-0.42.0//:build_script_build",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__windows_x86_64_msvc-0.42.0//:build_script_build",
+    ],
 )
 
 cargo_build_script(
-    # See comment associated with alias. Do not change this name
     name = "windows_x86_64_msvc_build_script",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    build_script_env = {
-    },
-    compile_data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    srcs = glob(["**/*.rs"]),
     crate_name = "build_script_build",
     crate_root = "build.rs",
     data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
+    ),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
         "--cap-lints=allow",
     ],
     tags = [
@@ -153,28 +71,12 @@
         "noclippy",
         "norustfmt",
     ],
-    tools = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     version = "0.42.0",
     visibility = ["//visibility:private"],
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
 
 alias(
-    # Because `cargo_build_script` does some invisible target name mutating to
-    # determine the package and crate name for a build script, the Bazel
-    # target name of any build script cannot be the Cargo canonical name
-    # of `cargo_build_script` (rule) without losing out on having certain
-    # Cargo environment variables set.
     name = "build_script_build",
     actual = "windows_x86_64_msvc_build_script",
-    tags = [
-        "manual",
-    ],
+    tags = ["manual"],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wit-parser-0.2.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wit-parser-0.2.0.bazel
index 5ba3534..e9b1289 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wit-parser-0.2.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wit-parser-0.2.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wit_parser",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.2.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
-            "@rules_rust_wasm_bindgen__leb128-0.2.5//:leb128",
-            "@rules_rust_wasm_bindgen__wit-schema-version-0.1.0//:wit_schema_version",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
+        "@rules_rust_wasm_bindgen__leb128-0.2.5//:leb128",
+        "@rules_rust_wasm_bindgen__wit-schema-version-0.1.0//:wit_schema_version",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wit-printer-0.2.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wit-printer-0.2.0.bazel
index 4c9a607..bfea766 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wit-printer-0.2.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wit-printer-0.2.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wit_printer",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,12 +41,9 @@
     ],
     version = "0.2.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
-            "@rules_rust_wasm_bindgen__wasmprinter-0.2.33//:wasmprinter",
-            "@rules_rust_wasm_bindgen__wit-parser-0.2.0//:wit_parser",
-            "@rules_rust_wasm_bindgen__wit-schema-version-0.1.0//:wit_schema_version",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
+        "@rules_rust_wasm_bindgen__wasmprinter-0.2.33//:wasmprinter",
+        "@rules_rust_wasm_bindgen__wit-parser-0.2.0//:wit_parser",
+        "@rules_rust_wasm_bindgen__wit-schema-version-0.1.0//:wit_schema_version",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wit-schema-version-0.1.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wit-schema-version-0.1.0.bazel
index 9eaf8ba..57a601c 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wit-schema-version-0.1.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wit-schema-version-0.1.0.bazel
@@ -6,11 +6,8 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
-    "rust_binary",
     "rust_library",
 )
 
@@ -22,56 +19,20 @@
 
 rust_library(
     name = "wit_schema_version",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,76 +40,4 @@
         "norustfmt",
     ],
     version = "0.1.0",
-    deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-)
-
-rust_binary(
-    name = "wit-schema-version__bin",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
-    compile_data = glob(
-        include = ["**"],
-        exclude = [
-            "**/* *",
-            "BUILD.bazel",
-            "BUILD",
-            "WORKSPACE.bazel",
-            "WORKSPACE",
-        ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
-    crate_root = "src/main.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
-    tags = [
-        "cargo-bazel",
-        "manual",
-        "noclippy",
-        "norustfmt",
-    ],
-    version = "0.1.0",
-    deps = [
-        ":wit_schema_version",
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wit-text-0.8.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wit-text-0.8.0.bazel
index 42e5ac9..d4759ca 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wit-text-0.8.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wit-text-0.8.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wit_text",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,11 +41,8 @@
     ],
     version = "0.8.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
-            "@rules_rust_wasm_bindgen__wast-21.0.0//:wast",
-            "@rules_rust_wasm_bindgen__wit-writer-0.2.0//:wit_writer",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
+        "@rules_rust_wasm_bindgen__wast-21.0.0//:wast",
+        "@rules_rust_wasm_bindgen__wit-writer-0.2.0//:wit_writer",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wit-validator-0.2.1.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wit-validator-0.2.1.bazel
index f8c3d5c..783d3f1 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wit-validator-0.2.1.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wit-validator-0.2.1.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wit_validator",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,12 +41,9 @@
     ],
     version = "0.2.1",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
-            "@rules_rust_wasm_bindgen__wasmparser-0.59.0//:wasmparser",
-            "@rules_rust_wasm_bindgen__wit-parser-0.2.0//:wit_parser",
-            "@rules_rust_wasm_bindgen__wit-schema-version-0.1.0//:wit_schema_version",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
+        "@rules_rust_wasm_bindgen__wasmparser-0.59.0//:wasmparser",
+        "@rules_rust_wasm_bindgen__wit-parser-0.2.0//:wit_parser",
+        "@rules_rust_wasm_bindgen__wit-schema-version-0.1.0//:wit_schema_version",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wit-walrus-0.6.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wit-walrus-0.6.0.bazel
index a173a1e..f492fe6 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wit-walrus-0.6.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wit-walrus-0.6.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wit_walrus",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,14 +41,11 @@
     ],
     version = "0.6.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
-            "@rules_rust_wasm_bindgen__id-arena-2.2.1//:id_arena",
-            "@rules_rust_wasm_bindgen__walrus-0.19.0//:walrus",
-            "@rules_rust_wasm_bindgen__wit-parser-0.2.0//:wit_parser",
-            "@rules_rust_wasm_bindgen__wit-schema-version-0.1.0//:wit_schema_version",
-            "@rules_rust_wasm_bindgen__wit-writer-0.2.0//:wit_writer",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__anyhow-1.0.68//:anyhow",
+        "@rules_rust_wasm_bindgen__id-arena-2.2.1//:id_arena",
+        "@rules_rust_wasm_bindgen__walrus-0.19.0//:walrus",
+        "@rules_rust_wasm_bindgen__wit-parser-0.2.0//:wit_parser",
+        "@rules_rust_wasm_bindgen__wit-schema-version-0.1.0//:wit_schema_version",
+        "@rules_rust_wasm_bindgen__wit-writer-0.2.0//:wit_writer",
+    ],
 )
diff --git a/wasm_bindgen/3rdparty/crates/BUILD.wit-writer-0.2.0.bazel b/wasm_bindgen/3rdparty/crates/BUILD.wit-writer-0.2.0.bazel
index 7564108..57a2b1b 100644
--- a/wasm_bindgen/3rdparty/crates/BUILD.wit-writer-0.2.0.bazel
+++ b/wasm_bindgen/3rdparty/crates/BUILD.wit-writer-0.2.0.bazel
@@ -6,8 +6,6 @@
 #     bazel run @//wasm_bindgen/3rdparty:crates_vendor
 ###############################################################################
 
-# buildifier: disable=bzl-visibility
-load("@rules_rust//crate_universe/private:selects.bzl", "select_with_or")
 load(
     "@rules_rust//rust:defs.bzl",
     "rust_library",
@@ -21,56 +19,20 @@
 
 rust_library(
     name = "wit_writer",
-    srcs = glob(
-        include = [
-            "**/*.rs",
-        ],
-        exclude = [
-        ],
-    ),
-    aliases = select({
-        "//conditions:default": {
-        },
-    }),
+    srcs = glob(["**/*.rs"]),
     compile_data = glob(
         include = ["**"],
         exclude = [
             "**/* *",
-            "BUILD.bazel",
             "BUILD",
-            "WORKSPACE.bazel",
+            "BUILD.bazel",
             "WORKSPACE",
+            "WORKSPACE.bazel",
         ],
-    ) + select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    crate_features = [
-    ],
+    ),
     crate_root = "src/lib.rs",
-    data = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
     edition = "2018",
-    proc_macro_deps = [
-    ] + select({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_env = {
-    },
-    rustc_env_files = select_with_or({
-        "//conditions:default": [
-        ],
-    }),
-    rustc_flags = [
-        # In most cases, warnings in 3rd party crates are not interesting as
-        # they're out of the control of consumers. The flag here silences
-        # warnings. For more details see:
-        # https://doc.rust-lang.org/rustc/lints/levels.html
-        "--cap-lints=allow",
-    ],
+    rustc_flags = ["--cap-lints=allow"],
     tags = [
         "cargo-bazel",
         "manual",
@@ -79,10 +41,7 @@
     ],
     version = "0.2.0",
     deps = [
-    ] + select({
-        "//conditions:default": [
-            "@rules_rust_wasm_bindgen__leb128-0.2.5//:leb128",
-            "@rules_rust_wasm_bindgen__wit-schema-version-0.1.0//:wit_schema_version",
-        ],
-    }),
+        "@rules_rust_wasm_bindgen__leb128-0.2.5//:leb128",
+        "@rules_rust_wasm_bindgen__wit-schema-version-0.1.0//:wit_schema_version",
+    ],
 )
