[INFO] fetching crate conrod_example_shared 0.76.1...
[INFO] testing conrod_example_shared-0.76.1 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate conrod_example_shared 0.76.1 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate conrod_example_shared 0.76.1
[INFO] finished tweaking crates.io crate conrod_example_shared 0.76.1
[INFO] tweaked toml for crates.io crate conrod_example_shared 0.76.1 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate conrod_example_shared 0.76.1 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 99 packages to latest compatible versions
[INFO] [stderr]       Adding rand v0.7.3 (available: v0.9.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rusttype v0.8.3
[INFO] [stderr]   Downloaded stb_truetype v0.3.1
[INFO] [stderr]   Downloaded piston-float v1.0.1
[INFO] [stderr]   Downloaded piston-viewport v1.0.2
[INFO] [stderr]   Downloaded ordered-float v1.1.1
[INFO] [stderr]   Downloaded dlib v0.4.2
[INFO] [stderr]   Downloaded conrod_derive v0.76.1
[INFO] [stderr]   Downloaded wayland-sys v0.23.6
[INFO] [stderr]   Downloaded objc-foundation v0.1.1
[INFO] [stderr]   Downloaded rusttype v0.7.9
[INFO] [stderr]   Downloaded objc_id v0.1.1
[INFO] [stderr]   Downloaded instant v0.1.13
[INFO] [stderr]   Downloaded andrew v0.2.1
[INFO] [stderr]   Downloaded x11-clipboard v0.5.3
[INFO] [stderr]   Downloaded xml-rs v0.8.28
[INFO] [stderr]   Downloaded clipboard-win v2.2.0
[INFO] [stderr]   Downloaded libloading v0.6.7
[INFO] [stderr]   Downloaded num-complex v0.3.1
[INFO] [stderr]   Downloaded smithay-client-toolkit v0.6.6
[INFO] [stderr]   Downloaded quick-xml v0.22.0
[INFO] [stderr]   Downloaded petgraph v0.4.13
[INFO] [stderr]   Downloaded wayland-protocols v0.23.6
[INFO] [stderr]   Downloaded xcb v0.10.1
[INFO] [stderr]   Downloaded num-bigint v0.3.3
[INFO] [stderr]   Downloaded wayland-client v0.23.6
[INFO] [stderr]   Downloaded conrod_core v0.76.1
[INFO] [stderr]   Downloaded nix v0.14.1
[INFO] [stderr]   Downloaded copypasta v0.6.3
[INFO] [stderr]   Downloaded daggy v0.5.0
[INFO] [stderr]   Downloaded line_drawing v0.7.0
[INFO] [stderr]   Downloaded xdg v2.5.2
[INFO] [stderr]   Downloaded memmap v0.7.0
[INFO] [stderr]   Downloaded smithay-clipboard v0.4.0
[INFO] [stderr]   Downloaded fixedbitset v0.1.9
[INFO] [stderr]   Downloaded num v0.3.1
[INFO] [stderr]   Downloaded wayland-commons v0.23.6
[INFO] [stderr]   Downloaded pistoncore-input v1.0.1
[INFO] [stderr]   Downloaded wayland-scanner v0.23.6
[INFO] [stderr]   Downloaded linked-hash-map v0.5.6
[INFO] [stderr]   Downloaded approx v0.3.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 88e34cb5bc936419b856b2f2db46c7a116b39b0a77d0fc3b239f4f5cbcb7ca6a
[INFO] running `Command { std: "docker" "start" "-a" "88e34cb5bc936419b856b2f2db46c7a116b39b0a77d0fc3b239f4f5cbcb7ca6a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "88e34cb5bc936419b856b2f2db46c7a116b39b0a77d0fc3b239f4f5cbcb7ca6a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "88e34cb5bc936419b856b2f2db46c7a116b39b0a77d0fc3b239f4f5cbcb7ca6a", kill_on_drop: false }`
[INFO] [stdout] 88e34cb5bc936419b856b2f2db46c7a116b39b0a77d0fc3b239f4f5cbcb7ca6a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d16e9602ba3705d4c11775f9ebb53a9ed3ca3bcd42d5452d39c111d1818333bd
[INFO] running `Command { std: "docker" "start" "-a" "d16e9602ba3705d4c11775f9ebb53a9ed3ca3bcd42d5452d39c111d1818333bd", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling xml-rs v0.8.28
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]    Compiling libloading v0.6.7
[INFO] [stderr]    Compiling stb_truetype v0.3.1
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling approx v0.3.2
[INFO] [stderr]    Compiling ordered-float v1.1.1
[INFO] [stderr]    Compiling linked-hash-map v0.5.6
[INFO] [stderr]    Compiling line_drawing v0.7.0
[INFO] [stderr]    Compiling num-bigint v0.3.3
[INFO] [stderr]    Compiling xdg v2.5.2
[INFO] [stderr]    Compiling memmap v0.7.0
[INFO] [stderr]    Compiling num-rational v0.3.2
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling syn v2.0.110
[INFO] [stderr]    Compiling fixedbitset v0.1.9
[INFO] [stderr]    Compiling piston-float v1.0.1
[INFO] [stderr]    Compiling dlib v0.4.2
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling petgraph v0.4.13
[INFO] [stderr]    Compiling num-complex v0.3.1
[INFO] [stderr]    Compiling wayland-sys v0.23.6
[INFO] [stderr]    Compiling piston-viewport v1.0.2
[INFO] [stderr]    Compiling quick-xml v0.22.0
[INFO] [stderr]    Compiling wayland-scanner v0.23.6
[INFO] [stderr]    Compiling daggy v0.5.0
[INFO] [stderr]    Compiling crossbeam-deque v0.7.4
[INFO] [stderr]    Compiling rusttype v0.8.3
[INFO] [stderr]    Compiling xcb v0.10.1
[INFO] [stderr]    Compiling rusttype v0.7.9
[INFO] [stderr]    Compiling andrew v0.2.1
[INFO] [stderr]    Compiling num v0.3.1
[INFO] [stderr]    Compiling wayland-client v0.23.6
[INFO] [stderr]    Compiling wayland-protocols v0.23.6
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling wayland-commons v0.23.6
[INFO] [stderr]    Compiling x11-clipboard v0.5.3
[INFO] [stderr]    Compiling conrod_derive v0.76.1
[INFO] [stderr]    Compiling pistoncore-input v1.0.1
[INFO] [stderr]    Compiling smithay-client-toolkit v0.6.6
[INFO] [stderr]    Compiling smithay-clipboard v0.4.0
[INFO] [stderr]    Compiling copypasta v0.6.3
[INFO] [stderr]    Compiling conrod_core v0.76.1
[INFO] [stderr]    Compiling conrod_example_shared v0.76.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/lib.rs:277:19
[INFO] [stdout]     |
[INFO] [stdout] 277 |       for (x, y) in widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stdout]     |  ___________________^
[INFO] [stdout] 278 | |         .label("BALL XY")
[INFO] [stdout] 279 | |         .wh_of(ids.button)
[INFO] [stdout] 280 | |         .align_middle_y_of(ids.button)
[INFO] [stdout] 281 | |         .align_middle_x_of(ids.canvas)
[INFO] [stdout] 282 | |         .parent(ids.canvas)
[INFO] [stdout] 283 | |         .set(ids.xy_pad, ui)
[INFO] [stdout]     | |____________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 277 -     for (x, y) in widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stdout] 277 +     while let Some((x, y)) = widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 277 -     for (x, y) in widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stdout] 277 +     if let Some((x, y)) = widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/lib.rs:329:21
[INFO] [stdout]     |
[INFO] [stdout] 329 |       for new_freq in widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 330 | |         .down(60.0)
[INFO] [stdout] 331 | |         .align_middle_x_of(ids.canvas)
[INFO] [stdout] 332 | |         .w_h(160.0, 40.0)
[INFO] [stdout] 333 | |         .label("F R E Q")
[INFO] [stdout] 334 | |         .set(ids.number_dialer, ui)
[INFO] [stdout]     | |___________________________________^
[INFO] [stdout]     |
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 329 -     for new_freq in widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stdout] 329 +     while let Some(new_freq) = widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 329 -     for new_freq in widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stdout] 329 +     if let Some(new_freq) = widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 42.01s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: quick-xml v0.22.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "d16e9602ba3705d4c11775f9ebb53a9ed3ca3bcd42d5452d39c111d1818333bd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d16e9602ba3705d4c11775f9ebb53a9ed3ca3bcd42d5452d39c111d1818333bd", kill_on_drop: false }`
[INFO] [stdout] d16e9602ba3705d4c11775f9ebb53a9ed3ca3bcd42d5452d39c111d1818333bd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7a1eaf11029aec935a88194371190dd58c547197588463311eb487fa5feafad7
[INFO] running `Command { std: "docker" "start" "-a" "7a1eaf11029aec935a88194371190dd58c547197588463311eb487fa5feafad7", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/lib.rs:277:19
[INFO] [stdout]     |
[INFO] [stdout] 277 |       for (x, y) in widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stdout]     |  ___________________^
[INFO] [stdout] 278 | |         .label("BALL XY")
[INFO] [stdout] 279 | |         .wh_of(ids.button)
[INFO] [stdout] 280 | |         .align_middle_y_of(ids.button)
[INFO] [stdout] 281 | |         .align_middle_x_of(ids.canvas)
[INFO] [stdout] 282 | |         .parent(ids.canvas)
[INFO] [stdout] 283 | |         .set(ids.xy_pad, ui)
[INFO] [stdout]     | |____________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 277 -     for (x, y) in widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stdout] 277 +     while let Some((x, y)) = widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 277 -     for (x, y) in widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stdout] 277 +     if let Some((x, y)) = widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/lib.rs:329:21
[INFO] [stdout]     |
[INFO] [stdout] 329 |       for new_freq in widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 330 | |         .down(60.0)
[INFO] [stdout] 331 | |         .align_middle_x_of(ids.canvas)
[INFO] [stdout] 332 | |         .w_h(160.0, 40.0)
[INFO] [stdout] 333 | |         .label("F R E Q")
[INFO] [stdout] 334 | |         .set(ids.number_dialer, ui)
[INFO] [stdout]     | |___________________________________^
[INFO] [stdout]     |
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 329 -     for new_freq in widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stdout] 329 +     while let Some(new_freq) = widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 329 -     for new_freq in widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stdout] 329 +     if let Some(new_freq) = widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling conrod_example_shared v0.76.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/lib.rs:277:19
[INFO] [stdout]     |
[INFO] [stdout] 277 |       for (x, y) in widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stdout]     |  ___________________^
[INFO] [stdout] 278 | |         .label("BALL XY")
[INFO] [stdout] 279 | |         .wh_of(ids.button)
[INFO] [stdout] 280 | |         .align_middle_y_of(ids.button)
[INFO] [stdout] 281 | |         .align_middle_x_of(ids.canvas)
[INFO] [stdout] 282 | |         .parent(ids.canvas)
[INFO] [stdout] 283 | |         .set(ids.xy_pad, ui)
[INFO] [stdout]     | |____________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 277 -     for (x, y) in widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stdout] 277 +     while let Some((x, y)) = widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 277 -     for (x, y) in widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stdout] 277 +     if let Some((x, y)) = widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/lib.rs:329:21
[INFO] [stdout]     |
[INFO] [stdout] 329 |       for new_freq in widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 330 | |         .down(60.0)
[INFO] [stdout] 331 | |         .align_middle_x_of(ids.canvas)
[INFO] [stdout] 332 | |         .w_h(160.0, 40.0)
[INFO] [stdout] 333 | |         .label("F R E Q")
[INFO] [stdout] 334 | |         .set(ids.number_dialer, ui)
[INFO] [stdout]     | |___________________________________^
[INFO] [stdout]     |
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 329 -     for new_freq in widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stdout] 329 +     while let Some(new_freq) = widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 329 -     for new_freq in widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stdout] 329 +     if let Some(new_freq) = widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.56s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: quick-xml v0.22.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "7a1eaf11029aec935a88194371190dd58c547197588463311eb487fa5feafad7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7a1eaf11029aec935a88194371190dd58c547197588463311eb487fa5feafad7", kill_on_drop: false }`
[INFO] [stdout] 7a1eaf11029aec935a88194371190dd58c547197588463311eb487fa5feafad7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 8461e03ba74b78cb28a5338d2f4eb244c08a175de37690e9ac792807050228df
[INFO] running `Command { std: "docker" "start" "-a" "8461e03ba74b78cb28a5338d2f4eb244c08a175de37690e9ac792807050228df", 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 an `Option`. This is more readably written as an `if let` statement
[INFO] [stderr]    --> src/lib.rs:277:19
[INFO] [stderr]     |
[INFO] [stderr] 277 |       for (x, y) in widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stderr]     |  ___________________^
[INFO] [stderr] 278 | |         .label("BALL XY")
[INFO] [stderr] 279 | |         .wh_of(ids.button)
[INFO] [stderr] 280 | |         .align_middle_y_of(ids.button)
[INFO] [stderr] 281 | |         .align_middle_x_of(ids.canvas)
[INFO] [stderr] 282 | |         .parent(ids.canvas)
[INFO] [stderr] 283 | |         .set(ids.xy_pad, ui)
[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] 277 -     for (x, y) in widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stderr] 277 +     while let Some((x, y)) = widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stderr]     |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr]     |
[INFO] [stderr] 277 -     for (x, y) in widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[INFO] [stderr] 277 +     if let Some((x, y)) = widget::XYPad::new(app.ball_xy[0], min_x, max_x, app.ball_xy[1], min_y, max_y)
[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/lib.rs:329:21
[INFO] [stderr]     |
[INFO] [stderr] 329 |       for new_freq in widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stderr]     |  _____________________^
[INFO] [stderr] 330 | |         .down(60.0)
[INFO] [stderr] 331 | |         .align_middle_x_of(ids.canvas)
[INFO] [stderr] 332 | |         .w_h(160.0, 40.0)
[INFO] [stderr] 333 | |         .label("F R E Q")
[INFO] [stderr] 334 | |         .set(ids.number_dialer, ui)
[INFO] [stderr]     | |___________________________________^
[INFO] [stderr]     |
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr]     |
[INFO] [stderr] 329 -     for new_freq in widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stderr] 329 +     while let Some(new_freq) = widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stderr]     |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr]     |
[INFO] [stderr] 329 -     for new_freq in widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stderr] 329 +     if let Some(new_freq) = widget::NumberDialer::new(app.sine_frequency, min, max, decimal_precision)
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `conrod_example_shared` (lib) generated 2 warnings
[INFO] [stderr] warning: `conrod_example_shared` (lib test) generated 2 warnings (2 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.13s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: quick-xml v0.22.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/conrod_example_shared-b4055c7a91956e0f)
[INFO] [stderr]    Doc-tests conrod_example_shared
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "8461e03ba74b78cb28a5338d2f4eb244c08a175de37690e9ac792807050228df", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8461e03ba74b78cb28a5338d2f4eb244c08a175de37690e9ac792807050228df", kill_on_drop: false }`
[INFO] [stdout] 8461e03ba74b78cb28a5338d2f4eb244c08a175de37690e9ac792807050228df
