[INFO] fetching crate huozi 0.8.0... [INFO] testing huozi-0.8.0 against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_libc_patch_0 [INFO] extracting crate huozi 0.8.0 into /workspace/builds/worker-3-tc1/source [INFO] started tweaking crates.io crate huozi 0.8.0 [INFO] finished tweaking crates.io crate huozi 0.8.0 [INFO] tweaked toml for crates.io crate huozi 0.8.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate huozi 0.8.0 on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate huozi 0.8.0 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded android_logger v0.14.1 [INFO] [stderr] Downloaded csscolorparser v0.6.2 [INFO] [stderr] Downloaded d3d12 v22.0.0 [INFO] [stderr] Downloaded wgpu v22.0.0 [INFO] [stderr] Downloaded wgpu-core v22.0.0 [INFO] [stderr] Downloaded fontdue v0.9.2 [INFO] [stderr] Downloaded naga v22.0.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 112c515388f8be1f9529e3ddc31a9473059f8aa6023ef7342fe862157637ed99 [INFO] running `Command { std: "docker" "start" "-a" "112c515388f8be1f9529e3ddc31a9473059f8aa6023ef7342fe862157637ed99", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "112c515388f8be1f9529e3ddc31a9473059f8aa6023ef7342fe862157637ed99", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "112c515388f8be1f9529e3ddc31a9473059f8aa6023ef7342fe862157637ed99", kill_on_drop: false }` [INFO] [stdout] 112c515388f8be1f9529e3ddc31a9473059f8aa6023ef7342fe862157637ed99 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 021b35da40ec19bf8f5e13833e0c21ea556b44b2426c384d4ee49eae6669a836 [INFO] running `Command { std: "docker" "start" "-a" "021b35da40ec19bf8f5e13833e0c21ea556b44b2426c384d4ee49eae6669a836", kill_on_drop: false }` [INFO] [stderr] Compiling cfg_aliases v0.1.1 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling once_cell v1.19.0 [INFO] [stderr] Compiling bitflags v2.6.0 [INFO] [stderr] Compiling libc v0.2.155 [INFO] [stderr] Compiling thiserror v1.0.63 [INFO] [stderr] Compiling libloading v0.8.5 [INFO] [stderr] Compiling bit-vec v0.7.0 [INFO] [stderr] Compiling ash v0.38.0+1.3.281 [INFO] [stderr] Compiling simd-adler32 v0.3.7 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling unicode-width v0.1.13 [INFO] [stderr] Compiling khronos-egl v6.0.0 [INFO] [stderr] Compiling syn v2.0.72 [INFO] [stderr] Compiling naga v22.0.0 [INFO] [stderr] Compiling termcolor v1.4.1 [INFO] [stderr] Compiling siphasher v0.3.11 [INFO] [stderr] Compiling wgpu-hal v22.0.0 [INFO] [stderr] Compiling bit-set v0.6.0 [INFO] [stderr] Compiling gpu-descriptor-types v0.2.0 [INFO] [stderr] Compiling spirv v0.3.0+sdk-1.3.268.0 [INFO] [stderr] Compiling gpu-alloc-types v0.3.0 [INFO] [stderr] Compiling arrayvec v0.7.4 [INFO] [stderr] Compiling unicode-xid v0.2.4 [INFO] [stderr] Compiling phf_shared v0.11.2 [INFO] [stderr] Compiling adler v1.0.2 [INFO] [stderr] Compiling log v0.4.22 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Compiling hexf-parse v0.2.1 [INFO] [stderr] Compiling codespan-reporting v0.11.1 [INFO] [stderr] Compiling gpu-alloc v0.6.0 [INFO] [stderr] Compiling phf_generator v0.11.2 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling miniz_oxide v0.7.4 [INFO] [stderr] Compiling wgpu-types v22.0.0 [INFO] [stderr] Compiling wgpu-core v22.0.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling crc32fast v1.4.2 [INFO] [stderr] Compiling raw-window-handle v0.6.2 [INFO] [stderr] Compiling serde v1.0.204 [INFO] [stderr] Compiling litrs v0.4.1 [INFO] [stderr] Compiling profiling v1.0.15 [INFO] [stderr] Compiling glow v0.13.1 [INFO] [stderr] Compiling renderdoc-sys v1.1.0 [INFO] [stderr] Compiling fdeflate v0.3.4 [INFO] [stderr] Compiling wgpu v22.0.0 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling anyhow v1.0.86 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling indexmap v2.2.6 [INFO] [stderr] Compiling gpu-descriptor v0.3.0 [INFO] [stderr] Compiling flate2 v1.0.30 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling document-features v0.2.10 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling byteorder-lite v0.1.0 [INFO] [stderr] Compiling ttf-parser v0.21.1 [INFO] [stderr] Compiling lru v0.12.3 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling png v0.17.13 [INFO] [stderr] Compiling fontdue v0.9.2 [INFO] [stderr] Compiling thiserror-impl v1.0.63 [INFO] [stderr] Compiling bytemuck_derive v1.7.0 [INFO] [stderr] Compiling serde_derive v1.0.204 [INFO] [stderr] Compiling phf_macros v0.11.2 [INFO] [stderr] Compiling phf v0.11.2 [INFO] [stderr] Compiling bytemuck v1.16.1 [INFO] [stderr] Compiling image v0.25.2 [INFO] [stderr] Compiling csscolorparser v0.6.2 [INFO] [stderr] Compiling huozi v0.8.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/font_extractor/fontdue.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | / /// scale glyph size once it larger than 1em, it will affect width or height. [INFO] [stdout] 22 | | /// For example, `width / x_scale` should be the actual size if `x_scale` is not None. [INFO] [stdout] | |__________________________________________________________________________________________________^ [INFO] [stdout] 23 | x_scale: None, [INFO] [stdout] | ------------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::Glyph` [INFO] [stdout] --> src/layout/text_section.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::Glyph; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `total_height_of_section` is never read [INFO] [stdout] --> src/layout.rs:215:21 [INFO] [stdout] | [INFO] [stdout] 215 | let mut total_height_of_section: f64 = 0.; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `total_height_of_section` is never read [INFO] [stdout] --> src/layout.rs:239:21 [INFO] [stdout] | [INFO] [stdout] 239 | total_height_of_section = current_y + FONT_SIZE * style.line_height; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `total_height_of_section` is never read [INFO] [stdout] --> src/layout.rs:264:21 [INFO] [stdout] | [INFO] [stdout] 264 | total_height_of_section = current_y + FONT_SIZE * style.line_height; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/layout/vertex.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Vertex { [INFO] [stdout] | ^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/layout/vertex.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | / #[repr(C)] [INFO] [stdout] 2 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)] [INFO] [stdout] 3 | | pub struct Vertex { [INFO] [stdout] 4 | | pub position: [f32; 3], [INFO] [stdout] ... | [INFO] [stdout] 9 | | pub color: [f32; 4], [INFO] [stdout] 10 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:27:23 [INFO] [stdout] | [INFO] [stdout] 27 | fn escaped_str(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 27 | fn escaped_str(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:45:25 [INFO] [stdout] | [INFO] [stdout] 45 | fn string_quoted(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 45 | fn string_quoted(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:52:32 [INFO] [stdout] | [INFO] [stdout] 52 | fn string_without_space(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 52 | fn string_without_space(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:62:22 [INFO] [stdout] | [INFO] [stdout] 62 | fn plain_text(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 62 | fn plain_text(input: &str) -> ParseResult<'_, Element> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:66:28 [INFO] [stdout] | [INFO] [stdout] 66 | fn tag_head_keypair(input: &str) -> ParseResult<(String, Option)> { [INFO] [stdout] | ^^^^ ------------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 66 | fn tag_head_keypair(input: &str) -> ParseResult<'_, (String, Option)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:83:19 [INFO] [stdout] | [INFO] [stdout] 83 | fn tag_key(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 83 | fn tag_key(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:87:21 [INFO] [stdout] | [INFO] [stdout] 87 | fn tag_value(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 87 | fn tag_value(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:91:20 [INFO] [stdout] | [INFO] [stdout] 91 | fn tag_head(input: &str) -> ParseResult<(String, Option)> { [INFO] [stdout] | ^^^^ ------------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 91 | fn tag_head(input: &str) -> ParseResult<'_, (String, Option)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:104:19 [INFO] [stdout] | [INFO] [stdout] 104 | fn tag_end(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 104 | fn tag_end(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:114:22 [INFO] [stdout] | [INFO] [stdout] 114 | fn closed_tag(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 114 | fn closed_tag(input: &str) -> ParseResult<'_, Element> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:133:19 [INFO] [stdout] | [INFO] [stdout] 133 | fn element(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 133 | fn element(input: &str) -> ParseResult<'_, Element> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:137:20 [INFO] [stdout] | [INFO] [stdout] 137 | fn elements(input: &str) -> ParseResult> { [INFO] [stdout] | ^^^^ ------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 137 | fn elements(input: &str) -> ParseResult<'_, Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 44.36s [INFO] running `Command { std: "docker" "inspect" "021b35da40ec19bf8f5e13833e0c21ea556b44b2426c384d4ee49eae6669a836", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "021b35da40ec19bf8f5e13833e0c21ea556b44b2426c384d4ee49eae6669a836", kill_on_drop: false }` [INFO] [stdout] 021b35da40ec19bf8f5e13833e0c21ea556b44b2426c384d4ee49eae6669a836 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 739782c38c62d59f81a058a65b85586ec0686a22be393b3c71a4bd2c38d6d194 [INFO] running `Command { std: "docker" "start" "-a" "739782c38c62d59f81a058a65b85586ec0686a22be393b3c71a4bd2c38d6d194", kill_on_drop: false }` [INFO] [stderr] Compiling bitflags v2.6.0 [INFO] [stderr] Compiling log v0.4.22 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling pkg-config v0.3.30 [INFO] [stderr] Compiling rustix v0.38.34 [INFO] [stderr] Compiling linux-raw-sys v0.4.14 [INFO] [stderr] Compiling cc v1.1.6 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling dlib v0.5.2 [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling downcast-rs v1.2.1 [INFO] [stderr] Compiling wayland-client v0.31.5 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling getrandom v0.2.15 [INFO] [stderr] Compiling pin-project-lite v0.2.14 [INFO] [stderr] Compiling tracing-core v0.1.32 [INFO] [stderr] Compiling bytemuck v1.16.1 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling ttf-parser v0.24.0 [INFO] [stderr] Compiling strict-num v0.1.1 [INFO] [stderr] Compiling cursor-icon v1.1.0 [INFO] [stderr] Compiling xkeysym v0.2.1 [INFO] [stderr] Compiling spirv v0.3.0+sdk-1.3.268.0 [INFO] [stderr] Compiling gpu-alloc-types v0.3.0 [INFO] [stderr] Compiling gpu-descriptor-types v0.2.0 [INFO] [stderr] Compiling wgpu-types v22.0.0 [INFO] [stderr] Compiling tracing v0.1.40 [INFO] [stderr] Compiling regex-syntax v0.8.4 [INFO] [stderr] Compiling gpu-alloc v0.6.0 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling xcursor v0.3.6 [INFO] [stderr] Compiling arrayref v0.3.8 [INFO] [stderr] Compiling smithay-client-toolkit v0.18.1 [INFO] [stderr] Compiling tiny-skia-path v0.11.4 [INFO] [stderr] Compiling memmap2 v0.9.4 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling ab_glyph_rasterizer v0.1.8 [INFO] [stderr] Compiling anstyle-parse v0.2.5 [INFO] [stderr] Compiling winit v0.29.15 [INFO] [stderr] Compiling as-raw-xcb-connection v1.0.1 [INFO] [stderr] Compiling quick-xml v0.34.0 [INFO] [stderr] Compiling x11rb-protocol v0.13.1 [INFO] [stderr] Compiling colorchoice v1.0.2 [INFO] [stderr] Compiling anstyle-query v1.1.1 [INFO] [stderr] Compiling image v0.25.2 [INFO] [stderr] Compiling wayland-sys v0.31.4 [INFO] [stderr] Compiling x11-dl v2.21.0 [INFO] [stderr] Compiling anstream v0.6.15 [INFO] [stderr] Compiling indexmap v2.2.6 [INFO] [stderr] Compiling gpu-descriptor v0.3.0 [INFO] [stderr] Compiling regex-automata v0.4.7 [INFO] [stderr] Compiling tiny-skia v0.11.4 [INFO] [stderr] Compiling xkbcommon-dl v0.4.2 [INFO] [stderr] Compiling fontdue v0.9.2 [INFO] [stderr] Compiling lru v0.12.3 [INFO] [stderr] Compiling smol_str v0.2.2 [INFO] [stderr] Compiling humantime v2.1.0 [INFO] [stderr] Compiling wayland-scanner v0.31.4 [INFO] [stderr] Compiling pollster v0.3.0 [INFO] [stderr] Compiling naga v22.0.0 [INFO] [stderr] Compiling wayland-backend v0.3.6 [INFO] [stderr] Compiling owned_ttf_parser v0.24.0 [INFO] [stderr] Compiling ab_glyph v0.2.28 [INFO] [stderr] Compiling regex v1.10.5 [INFO] [stderr] Compiling env_filter v0.1.2 [INFO] [stderr] Compiling env_logger v0.11.5 [INFO] [stderr] Compiling polling v3.7.2 [INFO] [stderr] Compiling calloop v0.12.4 [INFO] [stderr] Compiling wayland-csd-frame v0.3.0 [INFO] [stderr] Compiling wayland-protocols v0.31.2 [INFO] [stderr] Compiling calloop-wayland-source v0.2.0 [INFO] [stderr] Compiling wayland-cursor v0.31.5 [INFO] [stderr] Compiling wgpu-hal v22.0.0 [INFO] [stderr] Compiling wayland-protocols-wlr v0.2.0 [INFO] [stderr] Compiling wayland-protocols-plasma v0.2.0 [INFO] [stderr] Compiling wgpu-core v22.0.0 [INFO] [stderr] Compiling x11rb v0.13.1 [INFO] [stderr] Compiling sctk-adwaita v0.8.3 [INFO] [stderr] Compiling wgpu v22.0.0 [INFO] [stderr] Compiling huozi v0.8.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/font_extractor/fontdue.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | / /// scale glyph size once it larger than 1em, it will affect width or height. [INFO] [stdout] 22 | | /// For example, `width / x_scale` should be the actual size if `x_scale` is not None. [INFO] [stdout] | |__________________________________________________________________________________________________^ [INFO] [stdout] 23 | x_scale: None, [INFO] [stdout] | ------------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::Glyph` [INFO] [stdout] --> src/layout/text_section.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::Glyph; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `total_height_of_section` is never read [INFO] [stdout] --> src/layout.rs:215:21 [INFO] [stdout] | [INFO] [stdout] 215 | let mut total_height_of_section: f64 = 0.; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `total_height_of_section` is never read [INFO] [stdout] --> src/layout.rs:239:21 [INFO] [stdout] | [INFO] [stdout] 239 | total_height_of_section = current_y + FONT_SIZE * style.line_height; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `total_height_of_section` is never read [INFO] [stdout] --> src/layout.rs:264:21 [INFO] [stdout] | [INFO] [stdout] 264 | total_height_of_section = current_y + FONT_SIZE * style.line_height; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/layout/vertex.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Vertex { [INFO] [stdout] | ^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/layout/vertex.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | / #[repr(C)] [INFO] [stdout] 2 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)] [INFO] [stdout] 3 | | pub struct Vertex { [INFO] [stdout] 4 | | pub position: [f32; 3], [INFO] [stdout] ... | [INFO] [stdout] 9 | | pub color: [f32; 4], [INFO] [stdout] 10 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:27:23 [INFO] [stdout] | [INFO] [stdout] 27 | fn escaped_str(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 27 | fn escaped_str(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:45:25 [INFO] [stdout] | [INFO] [stdout] 45 | fn string_quoted(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 45 | fn string_quoted(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:52:32 [INFO] [stdout] | [INFO] [stdout] 52 | fn string_without_space(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 52 | fn string_without_space(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:62:22 [INFO] [stdout] | [INFO] [stdout] 62 | fn plain_text(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 62 | fn plain_text(input: &str) -> ParseResult<'_, Element> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:66:28 [INFO] [stdout] | [INFO] [stdout] 66 | fn tag_head_keypair(input: &str) -> ParseResult<(String, Option)> { [INFO] [stdout] | ^^^^ ------------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 66 | fn tag_head_keypair(input: &str) -> ParseResult<'_, (String, Option)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:83:19 [INFO] [stdout] | [INFO] [stdout] 83 | fn tag_key(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 83 | fn tag_key(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:87:21 [INFO] [stdout] | [INFO] [stdout] 87 | fn tag_value(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 87 | fn tag_value(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:91:20 [INFO] [stdout] | [INFO] [stdout] 91 | fn tag_head(input: &str) -> ParseResult<(String, Option)> { [INFO] [stdout] | ^^^^ ------------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 91 | fn tag_head(input: &str) -> ParseResult<'_, (String, Option)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:104:19 [INFO] [stdout] | [INFO] [stdout] 104 | fn tag_end(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 104 | fn tag_end(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:114:22 [INFO] [stdout] | [INFO] [stdout] 114 | fn closed_tag(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 114 | fn closed_tag(input: &str) -> ParseResult<'_, Element> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:133:19 [INFO] [stdout] | [INFO] [stdout] 133 | fn element(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 133 | fn element(input: &str) -> ParseResult<'_, Element> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:137:20 [INFO] [stdout] | [INFO] [stdout] 137 | fn elements(input: &str) -> ParseResult> { [INFO] [stdout] | ^^^^ ------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 137 | fn elements(input: &str) -> ParseResult<'_, Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/font_extractor/fontdue.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | / /// scale glyph size once it larger than 1em, it will affect width or height. [INFO] [stdout] 22 | | /// For example, `width / x_scale` should be the actual size if `x_scale` is not None. [INFO] [stdout] | |__________________________________________________________________________________________________^ [INFO] [stdout] 23 | x_scale: None, [INFO] [stdout] | ------------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::Glyph` [INFO] [stdout] --> src/layout/text_section.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::Glyph; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `total_height_of_section` is never read [INFO] [stdout] --> src/layout.rs:215:21 [INFO] [stdout] | [INFO] [stdout] 215 | let mut total_height_of_section: f64 = 0.; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `total_height_of_section` is never read [INFO] [stdout] --> src/layout.rs:239:21 [INFO] [stdout] | [INFO] [stdout] 239 | total_height_of_section = current_y + FONT_SIZE * style.line_height; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `total_height_of_section` is never read [INFO] [stdout] --> src/layout.rs:264:21 [INFO] [stdout] | [INFO] [stdout] 264 | total_height_of_section = current_y + FONT_SIZE * style.line_height; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/layout/vertex.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Vertex { [INFO] [stdout] | ^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/layout/vertex.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | / #[repr(C)] [INFO] [stdout] 2 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)] [INFO] [stdout] 3 | | pub struct Vertex { [INFO] [stdout] 4 | | pub position: [f32; 3], [INFO] [stdout] ... | [INFO] [stdout] 9 | | pub color: [f32; 4], [INFO] [stdout] 10 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:27:23 [INFO] [stdout] | [INFO] [stdout] 27 | fn escaped_str(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 27 | fn escaped_str(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:45:25 [INFO] [stdout] | [INFO] [stdout] 45 | fn string_quoted(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 45 | fn string_quoted(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:52:32 [INFO] [stdout] | [INFO] [stdout] 52 | fn string_without_space(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 52 | fn string_without_space(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:62:22 [INFO] [stdout] | [INFO] [stdout] 62 | fn plain_text(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 62 | fn plain_text(input: &str) -> ParseResult<'_, Element> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:66:28 [INFO] [stdout] | [INFO] [stdout] 66 | fn tag_head_keypair(input: &str) -> ParseResult<(String, Option)> { [INFO] [stdout] | ^^^^ ------------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 66 | fn tag_head_keypair(input: &str) -> ParseResult<'_, (String, Option)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:83:19 [INFO] [stdout] | [INFO] [stdout] 83 | fn tag_key(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 83 | fn tag_key(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:87:21 [INFO] [stdout] | [INFO] [stdout] 87 | fn tag_value(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 87 | fn tag_value(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:91:20 [INFO] [stdout] | [INFO] [stdout] 91 | fn tag_head(input: &str) -> ParseResult<(String, Option)> { [INFO] [stdout] | ^^^^ ------------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 91 | fn tag_head(input: &str) -> ParseResult<'_, (String, Option)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:104:19 [INFO] [stdout] | [INFO] [stdout] 104 | fn tag_end(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 104 | fn tag_end(input: &str) -> ParseResult<'_, String> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:114:22 [INFO] [stdout] | [INFO] [stdout] 114 | fn closed_tag(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 114 | fn closed_tag(input: &str) -> ParseResult<'_, Element> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:133:19 [INFO] [stdout] | [INFO] [stdout] 133 | fn element(input: &str) -> ParseResult { [INFO] [stdout] | ^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 133 | fn element(input: &str) -> ParseResult<'_, Element> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:137:20 [INFO] [stdout] | [INFO] [stdout] 137 | fn elements(input: &str) -> ParseResult> { [INFO] [stdout] | ^^^^ ------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 137 | fn elements(input: &str) -> ParseResult<'_, Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 53.23s [INFO] running `Command { std: "docker" "inspect" "739782c38c62d59f81a058a65b85586ec0686a22be393b3c71a4bd2c38d6d194", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "739782c38c62d59f81a058a65b85586ec0686a22be393b3c71a4bd2c38d6d194", kill_on_drop: false }` [INFO] [stdout] 739782c38c62d59f81a058a65b85586ec0686a22be393b3c71a4bd2c38d6d194 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 14b368bd139a2d96c0ce281403f98dd154f30f1312a1e0a6da42fe7f43182e4b [INFO] running `Command { std: "docker" "start" "-a" "14b368bd139a2d96c0ce281403f98dd154f30f1312a1e0a6da42fe7f43182e4b", kill_on_drop: false }` [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/font_extractor/fontdue.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | / /// scale glyph size once it larger than 1em, it will affect width or height. [INFO] [stderr] 22 | | /// For example, `width / x_scale` should be the actual size if `x_scale` is not None. [INFO] [stderr] | |__________________________________________________________________________________________________^ [INFO] [stderr] 23 | x_scale: None, [INFO] [stderr] | ------------- rustdoc does not generate documentation for expression fields [INFO] [stderr] | [INFO] [stderr] = help: use `//` for a plain comment [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::Glyph` [INFO] [stderr] --> src/layout/text_section.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::Glyph; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `total_height_of_section` is never read [INFO] [stderr] --> src/layout.rs:215:21 [INFO] [stderr] | [INFO] [stderr] 215 | let mut total_height_of_section: f64 = 0.; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `total_height_of_section` is never read [INFO] [stderr] --> src/layout.rs:239:21 [INFO] [stderr] | [INFO] [stderr] 239 | total_height_of_section = current_y + FONT_SIZE * style.line_height; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `total_height_of_section` is never read [INFO] [stderr] --> src/layout.rs:264:21 [INFO] [stderr] | [INFO] [stderr] 264 | total_height_of_section = current_y + FONT_SIZE * style.line_height; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/layout/vertex.rs:3:12 [INFO] [stderr] | [INFO] [stderr] 3 | pub struct Vertex { [INFO] [stderr] | ^^^^^^ field in this struct [INFO] [stderr] | [INFO] [stderr] = help: consider removing this field [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `check` is never used [INFO] [stderr] --> src/layout/vertex.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | / #[repr(C)] [INFO] [stderr] 2 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)] [INFO] [stderr] 3 | | pub struct Vertex { [INFO] [stderr] 4 | | pub position: [f32; 3], [INFO] [stderr] ... | [INFO] [stderr] 9 | | pub color: [f32; 4], [INFO] [stderr] 10 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser.rs:27:23 [INFO] [stderr] | [INFO] [stderr] 27 | fn escaped_str(input: &str) -> ParseResult { [INFO] [stderr] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 27 | fn escaped_str(input: &str) -> ParseResult<'_, String> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser.rs:45:25 [INFO] [stderr] | [INFO] [stderr] 45 | fn string_quoted(input: &str) -> ParseResult { [INFO] [stderr] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 45 | fn string_quoted(input: &str) -> ParseResult<'_, String> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser.rs:52:32 [INFO] [stderr] | [INFO] [stderr] 52 | fn string_without_space(input: &str) -> ParseResult { [INFO] [stderr] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 52 | fn string_without_space(input: &str) -> ParseResult<'_, String> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser.rs:62:22 [INFO] [stderr] | [INFO] [stderr] 62 | fn plain_text(input: &str) -> ParseResult { [INFO] [stderr] | ^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 62 | fn plain_text(input: &str) -> ParseResult<'_, Element> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser.rs:66:28 [INFO] [stderr] | [INFO] [stderr] 66 | fn tag_head_keypair(input: &str) -> ParseResult<(String, Option)> { [INFO] [stderr] | ^^^^ ------------------------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 66 | fn tag_head_keypair(input: &str) -> ParseResult<'_, (String, Option)> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser.rs:83:19 [INFO] [stderr] | [INFO] [stderr] 83 | fn tag_key(input: &str) -> ParseResult { [INFO] [stderr] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 83 | fn tag_key(input: &str) -> ParseResult<'_, String> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser.rs:87:21 [INFO] [stderr] | [INFO] [stderr] 87 | fn tag_value(input: &str) -> ParseResult { [INFO] [stderr] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 87 | fn tag_value(input: &str) -> ParseResult<'_, String> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser.rs:91:20 [INFO] [stderr] | [INFO] [stderr] 91 | fn tag_head(input: &str) -> ParseResult<(String, Option)> { [INFO] [stderr] | ^^^^ ------------------------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 91 | fn tag_head(input: &str) -> ParseResult<'_, (String, Option)> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser.rs:104:19 [INFO] [stderr] | [INFO] [stderr] 104 | fn tag_end(input: &str) -> ParseResult { [INFO] [stderr] | ^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 104 | fn tag_end(input: &str) -> ParseResult<'_, String> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser.rs:114:22 [INFO] [stderr] | [INFO] [stderr] 114 | fn closed_tag(input: &str) -> ParseResult { [INFO] [stderr] | ^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 114 | fn closed_tag(input: &str) -> ParseResult<'_, Element> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser.rs:133:19 [INFO] [stderr] | [INFO] [stderr] 133 | fn element(input: &str) -> ParseResult { [INFO] [stderr] | ^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 133 | fn element(input: &str) -> ParseResult<'_, Element> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser.rs:137:20 [INFO] [stderr] | [INFO] [stderr] 137 | fn elements(input: &str) -> ParseResult> { [INFO] [stderr] | ^^^^ ------------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 137 | fn elements(input: &str) -> ParseResult<'_, Vec> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: `huozi` (lib) generated 19 warnings (run `cargo fix --lib -p huozi` to apply 13 suggestions) [INFO] [stderr] warning: `huozi` (lib test) generated 19 warnings (19 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.37s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/huozi-3655ca624034beac) [INFO] [stdout] [INFO] [stdout] running 13 tests [INFO] [stdout] test parser::tests::empty ... ok [INFO] [stdout] test parser::tests::mixed_text_and_block ... ok [INFO] [stdout] test parser::tests::complex_elements ... ok [INFO] [stdout] test parser::tests::parse_text ... ignored [INFO] [stdout] test parser::tests::plain_text ... ok [INFO] [stdout] test parser::tests::nested_blocks ... ok [INFO] [stdout] test parser::tests::plain_text_escaped ... ok [INFO] [stdout] test parser::tests::plain_text_multiple_line ... ok [INFO] [stdout] test parser::tests::single_block_multiline ... ok [INFO] [stdout] test parser::tests::single_block_with_value ... ok [INFO] [stdout] test parser::tests::single_block_with_value_quoted ... ok [INFO] [stdout] test parser::tests::single_block_without_value ... ok [INFO] [stdout] test parser::tests::tagpair_with_spaces ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 12 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "14b368bd139a2d96c0ce281403f98dd154f30f1312a1e0a6da42fe7f43182e4b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "14b368bd139a2d96c0ce281403f98dd154f30f1312a1e0a6da42fe7f43182e4b", kill_on_drop: false }` [INFO] [stdout] 14b368bd139a2d96c0ce281403f98dd154f30f1312a1e0a6da42fe7f43182e4b