Build #2208981 2025-06-08 12:51:59
# rustc version
rustc 1.89.0-nightly (cdd545be1 2025-06-07)# docs.rs version
docsrs 0.6.0 (d2911047 2025-05-28)# build log
[INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace/builds/web-assembler-0.1.2/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace/builds/web-assembler-0.1.2/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "DOCS_RS=1" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "6442450944" "--cpus" "6" "--user" "1001:1001" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20250607-1.89.0-nightly-cdd545be1\", \"--static-root-path\", \"/-/rustdoc.static/\", \"--cap-lints\", \"warn\", \"--extern-html-root-takes-precedence\"]" "--offline" "-Zunstable-options" "--config=doc.extern-map.registries.crates-io=\"https://docs.rs/{pkg_name}/{version}/x86_64-unknown-linux-gnu\"" "-Zrustdoc-scrape-examples" "-j6" "--target" "x86_64-unknown-linux-gnu" "--config" "build.rustdocflags=[\"-Zmetrics-dir=/opt/rustwide/target/metrics\"]", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 7cc8532c59f827eea4851254edabe12d4c1efabe4b28ffa5e275660de82383f2
[INFO] running `Command { std: "docker" "start" "-a" "7cc8532c59f827eea4851254edabe12d4c1efabe4b28ffa5e275660de82383f2", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: for loop over a `&Option`. This is more readably written as an `if let` statement
[INFO] [stderr] --> src/module.rs:73:9
[INFO] [stderr] |
[INFO] [stderr] 73 | do_section!(0x01, self.types);
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + while let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + if let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr]
[INFO] [stderr] warning: for loop over a `&Option`. This is more readably written as an `if let` statement
[INFO] [stderr] --> src/module.rs:74:9
[INFO] [stderr] |
[INFO] [stderr] 74 | do_section!(0x02, self.imports);
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + while let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + if let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr]
[INFO] [stderr] warning: for loop over a `&Option`. This is more readably written as an `if let` statement
[INFO] [stderr] --> src/module.rs:75:9
[INFO] [stderr] |
[INFO] [stderr] 75 | do_section!(0x03, self.functions);
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + while let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + if let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr]
[INFO] [stderr] warning: for loop over a `&Option`. This is more readably written as an `if let` statement
[INFO] [stderr] --> src/module.rs:76:9
[INFO] [stderr] |
[INFO] [stderr] 76 | do_section!(0x04, self.tables);
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + while let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + if let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr]
[INFO] [stderr] warning: for loop over a `&Option`. This is more readably written as an `if let` statement
[INFO] [stderr] --> src/module.rs:77:9
[INFO] [stderr] |
[INFO] [stderr] 77 | do_section!(0x05, self.memories);
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + while let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + if let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr]
[INFO] [stderr] warning: for loop over a `&Option`. This is more readably written as an `if let` statement
[INFO] [stderr] --> src/module.rs:78:9
[INFO] [stderr] |
[INFO] [stderr] 78 | do_section!(0x06, self.globals);
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + while let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + if let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr]
[INFO] [stderr] warning: for loop over a `&Option`. This is more readably written as an `if let` statement
[INFO] [stderr] --> src/module.rs:79:9
[INFO] [stderr] |
[INFO] [stderr] 79 | do_section!(0x07, self.exports);
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + while let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + if let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr]
[INFO] [stderr] warning: for loop over an `Option`. This is more readably written as an `if let` statement
[INFO] [stderr] --> src/module.rs:81:26
[INFO] [stderr] |
[INFO] [stderr] 81 | for index in self.start {
[INFO] [stderr] | ^^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr] |
[INFO] [stderr] 81 - for index in self.start {
[INFO] [stderr] 81 + while let Some(index) = self.start {
[INFO] [stderr] |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr] |
[INFO] [stderr] 81 - for index in self.start {
[INFO] [stderr] 81 + if let Some(index) = self.start {
[INFO] [stderr] |
[INFO] [stderr]
[INFO] [stderr] warning: for loop over a `&Option`. This is more readably written as an `if let` statement
[INFO] [stderr] --> src/module.rs:92:9
[INFO] [stderr] |
[INFO] [stderr] 92 | do_section!(0x09, self.elements);
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + while let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + if let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr]
[INFO] [stderr] warning: for loop over a `&Option`. This is more readably written as an `if let` statement
[INFO] [stderr] --> src/module.rs:93:9
[INFO] [stderr] |
[INFO] [stderr] 93 | do_section!(0x0a, self.codes);
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + while let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + if let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr]
[INFO] [stderr] warning: for loop over a `&Option`. This is more readably written as an `if let` statement
[INFO] [stderr] --> src/module.rs:94:9
[INFO] [stderr] |
[INFO] [stderr] 94 | do_section!(0x0b, self.data);
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + while let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr] |
[INFO] [stderr] 56 - for xs in field {
[INFO] [stderr] 56 + if let Some() = in field {
[INFO] [stderr] |
[INFO] [stderr]
[INFO] [stderr] warning: for loop over a `&Option`. This is more readably written as an `if let` statement
[INFO] [stderr] --> src/types.rs:103:20
[INFO] [stderr] |
[INFO] [stderr] 103 | for ret in ret {
[INFO] [stderr] | ^^^
[INFO] [stderr] |
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr] |
[INFO] [stderr] 103 - for ret in ret {
[INFO] [stderr] 103 + while let Some(ret) = ret {
[INFO] [stderr] |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr] |
[INFO] [stderr] 103 - for ret in ret {
[INFO] [stderr] 103 + if let Some(ret) = ret {
[INFO] [stderr] |
[INFO] [stderr]
[INFO] [stderr] warning: unnecessary transmute
[INFO] [stderr] --> src/ops.rs:320:47
[INFO] [stderr] |
[INFO] [stderr] 320 | size += write_uint32(buf, ::std::mem::transmute::<f32, u32>(*f));
[INFO] [stderr] | ---------------------------------^^^^
[INFO] [stderr] | |
[INFO] [stderr] | help: replace this with: `f32::to_bits`
[INFO] [stderr] |
[INFO] [stderr] = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stderr]
[INFO] [stderr] warning: unnecessary transmute
[INFO] [stderr] --> src/ops.rs:326:47
[INFO] [stderr] |
[INFO] [stderr] 326 | size += write_uint64(buf, ::std::mem::transmute::<f64, u64>(*f));
[INFO] [stderr] | ---------------------------------^^^^
[INFO] [stderr] | |
[INFO] [stderr] | help: replace this with: `f64::to_bits`
[INFO] [stderr]
[INFO] [stderr] warning: `web-assembler` (lib) generated 14 warnings (run `cargo fix --lib -p web-assembler` to apply 2 suggestions)
[INFO] [stderr] Scraping web-assembler v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr] Documenting web-assembler v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.75s
[INFO] [stderr] Generated /opt/rustwide/target/x86_64-unknown-linux-gnu/doc/web_assembler/index.html
[INFO] running `Command { std: "docker" "inspect" "7cc8532c59f827eea4851254edabe12d4c1efabe4b28ffa5e275660de82383f2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7cc8532c59f827eea4851254edabe12d4c1efabe4b28ffa5e275660de82383f2", kill_on_drop: false }`
[INFO] [stdout] 7cc8532c59f827eea4851254edabe12d4c1efabe4b28ffa5e275660de82383f2