]> git.lizzy.rs Git - rust.git/commitdiff
rustdoc: remove empty extern_crates and type="text/javascript" on script
authorMichael Howell <michael@notriddle.com>
Fri, 26 Aug 2022 21:49:06 +0000 (14:49 -0700)
committerMichael Howell <michael@notriddle.com>
Fri, 26 Aug 2022 22:00:20 +0000 (15:00 -0700)
Like #101023, this removes an attribute with a default value.

src/librustdoc/html/render/print_item.rs
src/librustdoc/html/static/js/main.js

index 912601dda20b127846984710d19428c264bbc4db..f258af114ade713b591eb36a348614c38648bb99 100644 (file)
@@ -987,7 +987,7 @@ fn trait_item(w: &mut Buffer, cx: &mut Context<'_>, m: &clean::Item, t: &clean::
     // So C's HTML will have something like this:
     //
     // ```html
-    // <script type="text/javascript" src="/implementors/A/trait.Foo.js"
+    // <script src="/implementors/A/trait.Foo.js"
     //     data-ignore-extern-crates="A,B" async></script>
     // ```
     //
@@ -1013,9 +1013,11 @@ fn trait_item(w: &mut Buffer, cx: &mut Context<'_>, m: &clean::Item, t: &clean::
         .map(|cnum| cx.shared.tcx.crate_name(cnum).to_string())
         .collect::<Vec<_>>()
         .join(",");
+    let (extern_before, extern_after) =
+        if extern_crates.is_empty() { ("", "") } else { (" data-ignore-extern-crates=\"", "\"") };
     write!(
         w,
-        "<script type=\"text/javascript\" src=\"{src}\" data-ignore-extern-crates=\"{extern_crates}\" async></script>",
+        "<script src=\"{src}\"{extern_before}{extern_crates}{extern_after} async></script>",
         src = js_src_path.finish(),
     );
 }
index 5dec610b30c7b66ffe86d6aaa56cc4392c6db42c..7f61c95e794b0696fde560ee74a6d42dd8a3ac95 100644 (file)
@@ -528,9 +528,9 @@ function loadCss(cssFileName) {
         // We don't want to include impls from this JS file, when the HTML already has them.
         // The current crate should always be ignored. Other crates that should also be
         // ignored are included in the attribute `data-ignore-extern-crates`.
-        const ignoreExternCrates = document
-            .querySelector("script[data-ignore-extern-crates]")
-            .getAttribute("data-ignore-extern-crates");
+        const script = document
+            .querySelector("script[data-ignore-extern-crates]");
+        const ignoreExternCrates = script ? script.getAttribute("data-ignore-extern-crates") : "";
         for (const lib of libs) {
             if (lib === window.currentCrate || ignoreExternCrates.indexOf(lib) !== -1) {
                 continue;