[INFO] fetching crate score-tab 0.2.0...
[INFO] testing score-tab-0.2.0 against master#d98a5da813da67eb189387b8ccfb73cf481275d8+rustflags=-Copt-level=3 for pr-138759
[INFO] extracting crate score-tab 0.2.0 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate score-tab 0.2.0
[INFO] finished tweaking crates.io crate score-tab 0.2.0
[INFO] tweaked toml for crates.io crate score-tab 0.2.0 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate score-tab 0.2.0 on toolchain d98a5da813da67eb189387b8ccfb73cf481275d8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate score-tab 0.2.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" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 80e8f19185500bde06ff96c9f3049bb792f9ae2d9fcc90ffc898b62689f839e7
[INFO] running `Command { std: "docker" "start" "-a" "80e8f19185500bde06ff96c9f3049bb792f9ae2d9fcc90ffc898b62689f839e7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "80e8f19185500bde06ff96c9f3049bb792f9ae2d9fcc90ffc898b62689f839e7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "80e8f19185500bde06ff96c9f3049bb792f9ae2d9fcc90ffc898b62689f839e7", kill_on_drop: false }`
[INFO] [stdout] 80e8f19185500bde06ff96c9f3049bb792f9ae2d9fcc90ffc898b62689f839e7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 01ced739b2ad1fef2a617a8e89359a7028ca8f6cf0b30b0d5162baaefe335355
[INFO] running `Command { std: "docker" "start" "-a" "01ced739b2ad1fef2a617a8e89359a7028ca8f6cf0b30b0d5162baaefe335355", kill_on_drop: false }`
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling quick-xml v0.38.3
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.16
[INFO] [stderr]    Compiling thiserror v2.0.16
[INFO] [stderr]    Compiling score-tab v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/parsers/gp3.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let key = cursor.read_i32::<LittleEndian>()? as i8;
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `octave`
[INFO] [stdout]   --> src/parsers/gp3.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let octave = cursor.read_u32::<LittleEndian>()?; // Usually 0
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_octave`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track`
[INFO] [stdout]   --> src/parsers/gp3.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let track = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_track`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flags2`
[INFO] [stdout]    --> src/parsers/gp3.rs:232:9
[INFO] [stdout]     |
[INFO] [stdout] 232 |     let flags2 = cursor.read_u8()?;
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_flags2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bend_type`
[INFO] [stdout]    --> src/parsers/gp3.rs:305:9
[INFO] [stdout]     |
[INFO] [stdout] 305 |     let bend_type = cursor.read_u8()?;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/parsers/gp4.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let key = cursor.read_i32::<LittleEndian>()? as i8;
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `octave`
[INFO] [stdout]   --> src/parsers/gp4.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let octave = cursor.read_u32::<LittleEndian>()?; // Skip octave
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_octave`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track_index`
[INFO] [stdout]    --> src/parsers/gp4.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let track_index = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_track_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_measure`
[INFO] [stdout]    --> src/parsers/gp4.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let from_measure = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_measure`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lyric`
[INFO] [stdout]    --> src/parsers/gp4.rs:114:13
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let lyric = read_gp_int_string(cursor)?;
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_lyric`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instrument`
[INFO] [stdout]    --> src/parsers/gp4.rs:128:13
[INFO] [stdout]     |
[INFO] [stdout] 128 |         let instrument = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instrument`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `volume`
[INFO] [stdout]    --> src/parsers/gp4.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let volume = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_volume`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `balance`
[INFO] [stdout]    --> src/parsers/gp4.rs:130:13
[INFO] [stdout]     |
[INFO] [stdout] 130 |         let balance = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_balance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chorus`
[INFO] [stdout]    --> src/parsers/gp4.rs:131:13
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let chorus = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_chorus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reverb`
[INFO] [stdout]    --> src/parsers/gp4.rs:132:13
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let reverb = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reverb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `phaser`
[INFO] [stdout]    --> src/parsers/gp4.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 133 |         let phaser = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_phaser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tremolo`
[INFO] [stdout]    --> src/parsers/gp4.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |         let tremolo = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tremolo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_banjo`
[INFO] [stdout]    --> src/parsers/gp4.rs:216:9
[INFO] [stdout]     |
[INFO] [stdout] 216 |     let is_banjo = flags & 0x04 != 0;
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_banjo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port`
[INFO] [stdout]    --> src/parsers/gp4.rs:232:9
[INFO] [stdout]     |
[INFO] [stdout] 232 |     let port = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel2`
[INFO] [stdout]    --> src/parsers/gp4.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |     let channel2 = cursor.read_u32::<LittleEndian>()? as u8;
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fret_count`
[INFO] [stdout]    --> src/parsers/gp4.rs:235:9
[INFO] [stdout]     |
[INFO] [stdout] 235 |     let fret_count = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fret_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]    --> src/parsers/gp4.rs:212:43
[INFO] [stdout]     |
[INFO] [stdout] 212 | fn read_track(cursor: &mut Cursor<&[u8]>, channel: u8) -> Result<Track> {
[INFO] [stdout]     |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_dotted`
[INFO] [stdout]    --> src/parsers/gp4.rs:338:9
[INFO] [stdout]     |
[INFO] [stdout] 338 |     let is_dotted = cursor.read_u8()? != 0;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_dotted`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tuplet`
[INFO] [stdout]    --> src/parsers/gp4.rs:339:9
[INFO] [stdout]     |
[INFO] [stdout] 339 |     let tuplet = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tuplet`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bend_type`
[INFO] [stdout]    --> src/parsers/gp4.rs:421:9
[INFO] [stdout]     |
[INFO] [stdout] 421 |     let bend_type = cursor.read_u8()?;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bend_value`
[INFO] [stdout]    --> src/parsers/gp4.rs:422:9
[INFO] [stdout]     |
[INFO] [stdout] 422 |     let bend_value = cursor.read_u32::<LittleEndian>()? as f32 / 100.0;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vibrato`
[INFO] [stdout]    --> src/parsers/gp4.rs:429:13
[INFO] [stdout]     |
[INFO] [stdout] 429 |         let vibrato = cursor.read_u8()? != 0;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vibrato`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sharp`
[INFO] [stdout]    --> src/parsers/gp4.rs:461:9
[INFO] [stdout]     |
[INFO] [stdout] 461 |     let sharp = cursor.read_u8()? != 0;
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_sharp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ninth_extension`
[INFO] [stdout]    --> src/parsers/gp4.rs:466:9
[INFO] [stdout]     |
[INFO] [stdout] 466 |     let ninth_extension = cursor.read_u8()?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ninth_extension`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `diminished_fifth`
[INFO] [stdout]    --> src/parsers/gp4.rs:468:9
[INFO] [stdout]     |
[INFO] [stdout] 468 |     let diminished_fifth = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_diminished_fifth`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `augmented_eleventh`
[INFO] [stdout]    --> src/parsers/gp4.rs:469:9
[INFO] [stdout]     |
[INFO] [stdout] 469 |     let augmented_eleventh = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_augmented_eleventh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channels`
[INFO] [stdout]   --> src/parsers/gp5.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let channels = read_channels(&mut cursor)?;
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track_choice`
[INFO] [stdout]    --> src/parsers/gp5.rs:106:9
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let track_choice = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_track_choice`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `line`
[INFO] [stdout]    --> src/parsers/gp5.rs:108:13
[INFO] [stdout]     |
[INFO] [stdout] 108 |         let line = read_gp_int_string(cursor)?;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_line`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `measure`
[INFO] [stdout]    --> src/parsers/gp5.rs:109:13
[INFO] [stdout]     |
[INFO] [stdout] 109 |         let measure = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_measure`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_banjo`
[INFO] [stdout]    --> src/parsers/gp5.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |     let is_banjo = (header & 0x04) != 0;
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_banjo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port`
[INFO] [stdout]    --> src/parsers/gp5.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 |     let port = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel2`
[INFO] [stdout]    --> src/parsers/gp5.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 186 |     let channel2 = cursor.read_u32::<LittleEndian>()? as u8;
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `frets`
[INFO] [stdout]    --> src/parsers/gp5.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 |     let frets = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_frets`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]    --> src/parsers/gp5.rs:165:43
[INFO] [stdout]     |
[INFO] [stdout] 165 | fn read_track(cursor: &mut Cursor<&[u8]>, channel: u8) -> Result<Track> {
[INFO] [stdout]     |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `repeat_count`
[INFO] [stdout]    --> src/parsers/gp5.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |         let repeat_count = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_repeat_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `alternative`
[INFO] [stdout]    --> src/parsers/gp5.rs:271:13
[INFO] [stdout]     |
[INFO] [stdout] 271 |         let alternative = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_alternative`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `marker_name`
[INFO] [stdout]    --> src/parsers/gp5.rs:276:13
[INFO] [stdout]     |
[INFO] [stdout] 276 |         let marker_name = read_gp_int_string(cursor)?;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_marker_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `marker_color`
[INFO] [stdout]    --> src/parsers/gp5.rs:277:13
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let marker_color = (cursor.read_u8()?, cursor.read_u8()?, cursor.read_u8()?);
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_marker_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `text`
[INFO] [stdout]    --> src/parsers/gp5.rs:336:13
[INFO] [stdout]     |
[INFO] [stdout] 336 |         let text = read_gp_int_string(cursor)?;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_text`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_dotted`
[INFO] [stdout]    --> src/parsers/gp5.rs:369:9
[INFO] [stdout]     |
[INFO] [stdout] 369 |     let is_dotted = cursor.read_u8()? != 0;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_dotted`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `base_fret`
[INFO] [stdout]    --> src/parsers/gp5.rs:418:13
[INFO] [stdout]     |
[INFO] [stdout] 418 |         let base_fret = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_base_fret`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `effect`
[INFO] [stdout]    --> src/parsers/gp5.rs:443:13
[INFO] [stdout]     |
[INFO] [stdout] 443 |         let effect = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_effect`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stroke_up`
[INFO] [stdout]    --> src/parsers/gp5.rs:453:13
[INFO] [stdout]     |
[INFO] [stdout] 453 |         let stroke_up = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stroke_up`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stroke_down`
[INFO] [stdout]    --> src/parsers/gp5.rs:454:13
[INFO] [stdout]     |
[INFO] [stdout] 454 |         let stroke_down = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stroke_down`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pick_stroke`
[INFO] [stdout]    --> src/parsers/gp5.rs:459:13
[INFO] [stdout]     |
[INFO] [stdout] 459 |         let pick_stroke = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pick_stroke`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position`
[INFO] [stdout]    --> src/parsers/gp5.rs:469:13
[INFO] [stdout]     |
[INFO] [stdout] 469 |         let position = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/parsers/gp5.rs:470:13
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let value = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vibrato`
[INFO] [stdout]    --> src/parsers/gp5.rs:471:13
[INFO] [stdout]     |
[INFO] [stdout] 471 |         let vibrato = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vibrato`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `note_type`
[INFO] [stdout]    --> src/parsers/gp5.rs:487:9
[INFO] [stdout]     |
[INFO] [stdout] 487 |     let note_type = if (flags & 0x20) != 0 {
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_note_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tremolo_speed`
[INFO] [stdout]    --> src/parsers/gp5.rs:544:13
[INFO] [stdout]     |
[INFO] [stdout] 544 |         let tremolo_speed = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tremolo_speed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `harmonic_type`
[INFO] [stdout]    --> src/parsers/gp5.rs:561:13
[INFO] [stdout]     |
[INFO] [stdout] 561 |         let harmonic_type = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_harmonic_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `trill_fret`
[INFO] [stdout]    --> src/parsers/gp5.rs:566:13
[INFO] [stdout]     |
[INFO] [stdout] 566 |         let trill_fret = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_trill_fret`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `trill_speed`
[INFO] [stdout]    --> src/parsers/gp5.rs:567:13
[INFO] [stdout]     |
[INFO] [stdout] 567 |         let trill_speed = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_trill_speed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bend_type`
[INFO] [stdout]    --> src/parsers/gp5.rs:582:9
[INFO] [stdout]     |
[INFO] [stdout] 582 |     let bend_type = cursor.read_u8()?;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bend_value`
[INFO] [stdout]    --> src/parsers/gp5.rs:583:9
[INFO] [stdout]     |
[INFO] [stdout] 583 |     let bend_value = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vibrato`
[INFO] [stdout]    --> src/parsers/gp5.rs:591:13
[INFO] [stdout]     |
[INFO] [stdout] 591 |         let vibrato = cursor.read_u8()? != 0;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vibrato`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]   --> src/parsers/gpx.rs:68:33
[INFO] [stdout]    |
[INFO] [stdout] 68 | ...                   let channel = 0u8;
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_percussion`
[INFO] [stdout]   --> src/parsers/gpx.rs:69:33
[INFO] [stdout]    |
[INFO] [stdout] 69 | ...                   let is_percussion = false;
[INFO] [stdout]    |                           ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_percussion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reader`
[INFO] [stdout]    --> src/parsers/gpx.rs:334:27
[INFO] [stdout]     |
[INFO] [stdout] 334 |     fn parse_note_element(reader: &mut Reader<BufReader<impl Read>>) -> Result<Note> {
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reader`
[INFO] [stdout]    --> src/parsers/gpx.rs:339:26
[INFO] [stdout]     |
[INFO] [stdout] 339 |     fn parse_bend_effect(reader: &mut Reader<BufReader<impl Read>>) -> Result<BendEffect> {
[INFO] [stdout]     |                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/parsers/musescore.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn read_score(data: &[u8]) -> super::Result<crate::Score> {
[INFO] [stdout]    |                   ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pitch`
[INFO] [stdout]    --> src/writers/musescore.rs:174:14
[INFO] [stdout]     |
[INFO] [stdout] 174 |         let (pitch, octave) = Self::midi_to_pitch_octave(midi_note);
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_pitch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `octave`
[INFO] [stdout]    --> src/writers/musescore.rs:174:21
[INFO] [stdout]     |
[INFO] [stdout] 174 |         let (pitch, octave) = Self::midi_to_pitch_octave(midi_note);
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_octave`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instrument_name`
[INFO] [stdout]    --> src/writers/musescore.rs:287:13
[INFO] [stdout]     |
[INFO] [stdout] 287 |         let instrument_name = if track.is_percussion {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instrument_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/writers/musescore.rs:299:18
[INFO] [stdout]     |
[INFO] [stdout] 299 |             for (i, &tuning_note) in track.tuning.iter().enumerate() {
[INFO] [stdout]     |                  ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instrument_name`
[INFO] [stdout]    --> src/writers/musescore.rs:319:13
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let instrument_name = if track.is_percussion {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instrument_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track_id`
[INFO] [stdout]    --> src/writers/musescore.rs:318:40
[INFO] [stdout]     |
[INFO] [stdout] 318 |     fn write_instrument(track: &Track, track_id: usize) -> String {
[INFO] [stdout]     |                                        ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_track_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]    --> src/writers/gp4.rs:255:66
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn write_track(cursor: &mut Cursor<&mut Vec<u8>>, track: &Track, channel: u8) -> Result<()> {
[INFO] [stdout]     |                                                                  ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]    --> src/writers/gp5.rs:155:53
[INFO] [stdout]     |
[INFO] [stdout] 155 | fn write_track(buffer: &mut Vec<u8>, track: &Track, index: u8) -> Result<()> {
[INFO] [stdout]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `beat`
[INFO] [stdout]    --> src/writers/gpx.rs:298:34
[INFO] [stdout]     |
[INFO] [stdout] 298 |                 for (beat_index, beat) in measure.beats.iter().enumerate() {
[INFO] [stdout]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_beat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `note`
[INFO] [stdout]    --> src/writers/gpx.rs:341:25
[INFO] [stdout]     |
[INFO] [stdout] 341 |                     for note in &beat.notes {
[INFO] [stdout]     |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_note`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_gzip_compressed` is never used
[INFO] [stdout]   --> src/parsers/mod.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn is_gzip_compressed(data: &[u8]) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decompress_gzip` is never used
[INFO] [stdout]   --> src/parsers/mod.rs:84:4
[INFO] [stdout]    |
[INFO] [stdout] 84 | fn decompress_gzip(data: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `double_bar`, `repeat_open`, and `repeat_close` are never read
[INFO] [stdout]    --> src/parsers/gp4.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 141 | struct MeasureHeader {
[INFO] [stdout]     |        ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 147 |     double_bar: bool,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 148 |     repeat_open: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 149 |     repeat_close: u8,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MeasureHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/parsers/gp5.rs:602:5
[INFO] [stdout]     |
[INFO] [stdout] 601 | struct Channel {
[INFO] [stdout]     |        ------- fields in this struct
[INFO] [stdout] 602 |     index: u8,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 603 |     instrument: u32,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 604 |     volume: u8,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 605 |     balance: u8,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 606 |     chorus: u8,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 607 |     reverb: u8,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 608 |     phaser: u8,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 609 |     tremolo: u8,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Channel` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `double_bar` is never read
[INFO] [stdout]    --> src/parsers/gp5.rs:617:5
[INFO] [stdout]     |
[INFO] [stdout] 613 | struct MeasureHeader {
[INFO] [stdout]     |        ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 617 |     double_bar: bool,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MeasureHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> src/parsers/gpx.rs:184:8
[INFO] [stdout]     |
[INFO] [stdout] 28  | impl GpxReader {
[INFO] [stdout]     | -------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 184 |     fn parse_track_element(reader: &mut Reader<BufReader<impl Read>>) -> Result<Track> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 267 |     fn parse_tuning(reader: &mut Reader<BufReader<impl Read>>) -> Result<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 334 |     fn parse_note_element(reader: &mut Reader<BufReader<impl Read>>) -> Result<Note> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 339 |     fn parse_bend_effect(reader: &mut Reader<BufReader<impl Read>>) -> Result<BendEffect> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 348 |     fn parse_track_property(track: &mut Track, attributes: Attributes) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 398 |     fn parse_slide_effect(attributes: Attributes) -> Result<Option<SlideEffect>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 438 |     fn parse_time_signature(attributes: Attributes) -> Result<TimeSignature> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 477 |     fn parse_key_signature(attributes: Attributes) -> Result<KeySignature> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `extract_mscz_archive` and `try_decompress_gzip` are never used
[INFO] [stdout]   --> src/parsers/musescore.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl MuseScoreReader {
[INFO] [stdout]    | -------------------- associated functions in this implementation
[INFO] [stdout] 17 |     /// Extract MuseScore archive
[INFO] [stdout] 18 |     fn extract_mscz_archive(data: &[u8]) -> Result<std::collections::HashMap<String, Vec<u8>>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn try_decompress_gzip(data: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `FORMAT_VERSION` and `create_compressed_file` are never used
[INFO] [stdout]    --> src/writers/musescore.rs:12:11
[INFO] [stdout]     |
[INFO] [stdout] 10  | impl MuseScoreWriter {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] 11  |     /// MuseScore file format version
[INFO] [stdout] 12  |     const FORMAT_VERSION: &'static str = "3.02";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 482 |     fn create_compressed_file(xml_content: &str) -> Result<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 43.85s
[INFO] running `Command { std: "docker" "inspect" "01ced739b2ad1fef2a617a8e89359a7028ca8f6cf0b30b0d5162baaefe335355", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "01ced739b2ad1fef2a617a8e89359a7028ca8f6cf0b30b0d5162baaefe335355", kill_on_drop: false }`
[INFO] [stdout] 01ced739b2ad1fef2a617a8e89359a7028ca8f6cf0b30b0d5162baaefe335355
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f74a2538fb32049a4ebc5af1ad9cc6541c1d68e237598ee46d6016cd679b2869
[INFO] running `Command { std: "docker" "start" "-a" "f74a2538fb32049a4ebc5af1ad9cc6541c1d68e237598ee46d6016cd679b2869", kill_on_drop: false }`
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/parsers/gp3.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let key = cursor.read_i32::<LittleEndian>()? as i8;
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `octave`
[INFO] [stdout]   --> src/parsers/gp3.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let octave = cursor.read_u32::<LittleEndian>()?; // Usually 0
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_octave`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track`
[INFO] [stdout]   --> src/parsers/gp3.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let track = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_track`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flags2`
[INFO] [stdout]    --> src/parsers/gp3.rs:232:9
[INFO] [stdout]     |
[INFO] [stdout] 232 |     let flags2 = cursor.read_u8()?;
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_flags2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bend_type`
[INFO] [stdout]    --> src/parsers/gp3.rs:305:9
[INFO] [stdout]     |
[INFO] [stdout] 305 |     let bend_type = cursor.read_u8()?;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/parsers/gp4.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let key = cursor.read_i32::<LittleEndian>()? as i8;
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `octave`
[INFO] [stdout]   --> src/parsers/gp4.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let octave = cursor.read_u32::<LittleEndian>()?; // Skip octave
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_octave`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track_index`
[INFO] [stdout]    --> src/parsers/gp4.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let track_index = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_track_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_measure`
[INFO] [stdout]    --> src/parsers/gp4.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let from_measure = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_measure`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lyric`
[INFO] [stdout]    --> src/parsers/gp4.rs:114:13
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let lyric = read_gp_int_string(cursor)?;
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_lyric`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instrument`
[INFO] [stdout]    --> src/parsers/gp4.rs:128:13
[INFO] [stdout]     |
[INFO] [stdout] 128 |         let instrument = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instrument`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `volume`
[INFO] [stdout]    --> src/parsers/gp4.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let volume = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_volume`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `balance`
[INFO] [stdout]    --> src/parsers/gp4.rs:130:13
[INFO] [stdout]     |
[INFO] [stdout] 130 |         let balance = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_balance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chorus`
[INFO] [stdout]    --> src/parsers/gp4.rs:131:13
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let chorus = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_chorus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reverb`
[INFO] [stdout]    --> src/parsers/gp4.rs:132:13
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let reverb = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reverb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `phaser`
[INFO] [stdout]    --> src/parsers/gp4.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 133 |         let phaser = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_phaser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tremolo`
[INFO] [stdout]    --> src/parsers/gp4.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |         let tremolo = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tremolo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_banjo`
[INFO] [stdout]    --> src/parsers/gp4.rs:216:9
[INFO] [stdout]     |
[INFO] [stdout] 216 |     let is_banjo = flags & 0x04 != 0;
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_banjo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port`
[INFO] [stdout]    --> src/parsers/gp4.rs:232:9
[INFO] [stdout]     |
[INFO] [stdout] 232 |     let port = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel2`
[INFO] [stdout]    --> src/parsers/gp4.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |     let channel2 = cursor.read_u32::<LittleEndian>()? as u8;
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fret_count`
[INFO] [stdout]    --> src/parsers/gp4.rs:235:9
[INFO] [stdout]     |
[INFO] [stdout] 235 |     let fret_count = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fret_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]    --> src/parsers/gp4.rs:212:43
[INFO] [stdout]     |
[INFO] [stdout] 212 | fn read_track(cursor: &mut Cursor<&[u8]>, channel: u8) -> Result<Track> {
[INFO] [stdout]     |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_dotted`
[INFO] [stdout]    --> src/parsers/gp4.rs:338:9
[INFO] [stdout]     |
[INFO] [stdout] 338 |     let is_dotted = cursor.read_u8()? != 0;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_dotted`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tuplet`
[INFO] [stdout]    --> src/parsers/gp4.rs:339:9
[INFO] [stdout]     |
[INFO] [stdout] 339 |     let tuplet = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tuplet`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bend_type`
[INFO] [stdout]    --> src/parsers/gp4.rs:421:9
[INFO] [stdout]     |
[INFO] [stdout] 421 |     let bend_type = cursor.read_u8()?;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bend_value`
[INFO] [stdout]    --> src/parsers/gp4.rs:422:9
[INFO] [stdout]     |
[INFO] [stdout] 422 |     let bend_value = cursor.read_u32::<LittleEndian>()? as f32 / 100.0;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vibrato`
[INFO] [stdout]    --> src/parsers/gp4.rs:429:13
[INFO] [stdout]     |
[INFO] [stdout] 429 |         let vibrato = cursor.read_u8()? != 0;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vibrato`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sharp`
[INFO] [stdout]    --> src/parsers/gp4.rs:461:9
[INFO] [stdout]     |
[INFO] [stdout] 461 |     let sharp = cursor.read_u8()? != 0;
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_sharp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ninth_extension`
[INFO] [stdout]    --> src/parsers/gp4.rs:466:9
[INFO] [stdout]     |
[INFO] [stdout] 466 |     let ninth_extension = cursor.read_u8()?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ninth_extension`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `diminished_fifth`
[INFO] [stdout]    --> src/parsers/gp4.rs:468:9
[INFO] [stdout]     |
[INFO] [stdout] 468 |     let diminished_fifth = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_diminished_fifth`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `augmented_eleventh`
[INFO] [stdout]    --> src/parsers/gp4.rs:469:9
[INFO] [stdout]     |
[INFO] [stdout] 469 |     let augmented_eleventh = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_augmented_eleventh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channels`
[INFO] [stdout]   --> src/parsers/gp5.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let channels = read_channels(&mut cursor)?;
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track_choice`
[INFO] [stdout]    --> src/parsers/gp5.rs:106:9
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let track_choice = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_track_choice`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `line`
[INFO] [stdout]    --> src/parsers/gp5.rs:108:13
[INFO] [stdout]     |
[INFO] [stdout] 108 |         let line = read_gp_int_string(cursor)?;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_line`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `measure`
[INFO] [stdout]    --> src/parsers/gp5.rs:109:13
[INFO] [stdout]     |
[INFO] [stdout] 109 |         let measure = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_measure`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_banjo`
[INFO] [stdout]    --> src/parsers/gp5.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |     let is_banjo = (header & 0x04) != 0;
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_banjo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port`
[INFO] [stdout]    --> src/parsers/gp5.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 |     let port = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel2`
[INFO] [stdout]    --> src/parsers/gp5.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 186 |     let channel2 = cursor.read_u32::<LittleEndian>()? as u8;
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `frets`
[INFO] [stdout]    --> src/parsers/gp5.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 |     let frets = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_frets`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]    --> src/parsers/gp5.rs:165:43
[INFO] [stdout]     |
[INFO] [stdout] 165 | fn read_track(cursor: &mut Cursor<&[u8]>, channel: u8) -> Result<Track> {
[INFO] [stdout]     |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `repeat_count`
[INFO] [stdout]    --> src/parsers/gp5.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |         let repeat_count = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_repeat_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `alternative`
[INFO] [stdout]    --> src/parsers/gp5.rs:271:13
[INFO] [stdout]     |
[INFO] [stdout] 271 |         let alternative = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_alternative`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `marker_name`
[INFO] [stdout]    --> src/parsers/gp5.rs:276:13
[INFO] [stdout]     |
[INFO] [stdout] 276 |         let marker_name = read_gp_int_string(cursor)?;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_marker_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `marker_color`
[INFO] [stdout]    --> src/parsers/gp5.rs:277:13
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let marker_color = (cursor.read_u8()?, cursor.read_u8()?, cursor.read_u8()?);
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_marker_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `text`
[INFO] [stdout]    --> src/parsers/gp5.rs:336:13
[INFO] [stdout]     |
[INFO] [stdout] 336 |         let text = read_gp_int_string(cursor)?;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_text`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_dotted`
[INFO] [stdout]    --> src/parsers/gp5.rs:369:9
[INFO] [stdout]     |
[INFO] [stdout] 369 |     let is_dotted = cursor.read_u8()? != 0;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_dotted`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `base_fret`
[INFO] [stdout]    --> src/parsers/gp5.rs:418:13
[INFO] [stdout]     |
[INFO] [stdout] 418 |         let base_fret = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_base_fret`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `effect`
[INFO] [stdout]    --> src/parsers/gp5.rs:443:13
[INFO] [stdout]     |
[INFO] [stdout] 443 |         let effect = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_effect`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stroke_up`
[INFO] [stdout]    --> src/parsers/gp5.rs:453:13
[INFO] [stdout]     |
[INFO] [stdout] 453 |         let stroke_up = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stroke_up`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stroke_down`
[INFO] [stdout]    --> src/parsers/gp5.rs:454:13
[INFO] [stdout]     |
[INFO] [stdout] 454 |         let stroke_down = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stroke_down`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pick_stroke`
[INFO] [stdout]    --> src/parsers/gp5.rs:459:13
[INFO] [stdout]     |
[INFO] [stdout] 459 |         let pick_stroke = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pick_stroke`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position`
[INFO] [stdout]    --> src/parsers/gp5.rs:469:13
[INFO] [stdout]     |
[INFO] [stdout] 469 |         let position = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/parsers/gp5.rs:470:13
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let value = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vibrato`
[INFO] [stdout]    --> src/parsers/gp5.rs:471:13
[INFO] [stdout]     |
[INFO] [stdout] 471 |         let vibrato = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vibrato`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `note_type`
[INFO] [stdout]    --> src/parsers/gp5.rs:487:9
[INFO] [stdout]     |
[INFO] [stdout] 487 |     let note_type = if (flags & 0x20) != 0 {
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_note_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tremolo_speed`
[INFO] [stdout]    --> src/parsers/gp5.rs:544:13
[INFO] [stdout]     |
[INFO] [stdout] 544 |         let tremolo_speed = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tremolo_speed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `harmonic_type`
[INFO] [stdout]    --> src/parsers/gp5.rs:561:13
[INFO] [stdout]     |
[INFO] [stdout] 561 |         let harmonic_type = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_harmonic_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `trill_fret`
[INFO] [stdout]    --> src/parsers/gp5.rs:566:13
[INFO] [stdout]     |
[INFO] [stdout] 566 |         let trill_fret = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_trill_fret`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `trill_speed`
[INFO] [stdout]    --> src/parsers/gp5.rs:567:13
[INFO] [stdout]     |
[INFO] [stdout] 567 |         let trill_speed = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_trill_speed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bend_type`
[INFO] [stdout]    --> src/parsers/gp5.rs:582:9
[INFO] [stdout]     |
[INFO] [stdout] 582 |     let bend_type = cursor.read_u8()?;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bend_value`
[INFO] [stdout]    --> src/parsers/gp5.rs:583:9
[INFO] [stdout]     |
[INFO] [stdout] 583 |     let bend_value = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vibrato`
[INFO] [stdout]    --> src/parsers/gp5.rs:591:13
[INFO] [stdout]     |
[INFO] [stdout] 591 |         let vibrato = cursor.read_u8()? != 0;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vibrato`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]   --> src/parsers/gpx.rs:68:33
[INFO] [stdout]    |
[INFO] [stdout] 68 | ...                   let channel = 0u8;
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_percussion`
[INFO] [stdout]   --> src/parsers/gpx.rs:69:33
[INFO] [stdout]    |
[INFO] [stdout] 69 | ...                   let is_percussion = false;
[INFO] [stdout]    |                           ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_percussion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reader`
[INFO] [stdout]    --> src/parsers/gpx.rs:334:27
[INFO] [stdout]     |
[INFO] [stdout] 334 |     fn parse_note_element(reader: &mut Reader<BufReader<impl Read>>) -> Result<Note> {
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reader`
[INFO] [stdout]    --> src/parsers/gpx.rs:339:26
[INFO] [stdout]     |
[INFO] [stdout] 339 |     fn parse_bend_effect(reader: &mut Reader<BufReader<impl Read>>) -> Result<BendEffect> {
[INFO] [stdout]     |                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/parsers/musescore.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn read_score(data: &[u8]) -> super::Result<crate::Score> {
[INFO] [stdout]    |                   ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pitch`
[INFO] [stdout]    --> src/writers/musescore.rs:174:14
[INFO] [stdout]     |
[INFO] [stdout] 174 |         let (pitch, octave) = Self::midi_to_pitch_octave(midi_note);
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_pitch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `octave`
[INFO] [stdout]    --> src/writers/musescore.rs:174:21
[INFO] [stdout]     |
[INFO] [stdout] 174 |         let (pitch, octave) = Self::midi_to_pitch_octave(midi_note);
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_octave`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instrument_name`
[INFO] [stdout]    --> src/writers/musescore.rs:287:13
[INFO] [stdout]     |
[INFO] [stdout] 287 |         let instrument_name = if track.is_percussion {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instrument_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/writers/musescore.rs:299:18
[INFO] [stdout]     |
[INFO] [stdout] 299 |             for (i, &tuning_note) in track.tuning.iter().enumerate() {
[INFO] [stdout]     |                  ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling score-tab v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `instrument_name`
[INFO] [stdout]    --> src/writers/musescore.rs:319:13
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let instrument_name = if track.is_percussion {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instrument_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track_id`
[INFO] [stdout]    --> src/writers/musescore.rs:318:40
[INFO] [stdout]     |
[INFO] [stdout] 318 |     fn write_instrument(track: &Track, track_id: usize) -> String {
[INFO] [stdout]     |                                        ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_track_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]    --> src/writers/gp4.rs:255:66
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn write_track(cursor: &mut Cursor<&mut Vec<u8>>, track: &Track, channel: u8) -> Result<()> {
[INFO] [stdout]     |                                                                  ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]    --> src/writers/gp5.rs:155:53
[INFO] [stdout]     |
[INFO] [stdout] 155 | fn write_track(buffer: &mut Vec<u8>, track: &Track, index: u8) -> Result<()> {
[INFO] [stdout]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `beat`
[INFO] [stdout]    --> src/writers/gpx.rs:298:34
[INFO] [stdout]     |
[INFO] [stdout] 298 |                 for (beat_index, beat) in measure.beats.iter().enumerate() {
[INFO] [stdout]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_beat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `note`
[INFO] [stdout]    --> src/writers/gpx.rs:341:25
[INFO] [stdout]     |
[INFO] [stdout] 341 |                     for note in &beat.notes {
[INFO] [stdout]     |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_note`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_gzip_compressed` is never used
[INFO] [stdout]   --> src/parsers/mod.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn is_gzip_compressed(data: &[u8]) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decompress_gzip` is never used
[INFO] [stdout]   --> src/parsers/mod.rs:84:4
[INFO] [stdout]    |
[INFO] [stdout] 84 | fn decompress_gzip(data: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `double_bar`, `repeat_open`, and `repeat_close` are never read
[INFO] [stdout]    --> src/parsers/gp4.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 141 | struct MeasureHeader {
[INFO] [stdout]     |        ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 147 |     double_bar: bool,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 148 |     repeat_open: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 149 |     repeat_close: u8,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MeasureHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/parsers/gp5.rs:602:5
[INFO] [stdout]     |
[INFO] [stdout] 601 | struct Channel {
[INFO] [stdout]     |        ------- fields in this struct
[INFO] [stdout] 602 |     index: u8,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 603 |     instrument: u32,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 604 |     volume: u8,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 605 |     balance: u8,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 606 |     chorus: u8,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 607 |     reverb: u8,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 608 |     phaser: u8,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 609 |     tremolo: u8,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Channel` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `double_bar` is never read
[INFO] [stdout]    --> src/parsers/gp5.rs:617:5
[INFO] [stdout]     |
[INFO] [stdout] 613 | struct MeasureHeader {
[INFO] [stdout]     |        ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 617 |     double_bar: bool,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MeasureHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> src/parsers/gpx.rs:184:8
[INFO] [stdout]     |
[INFO] [stdout] 28  | impl GpxReader {
[INFO] [stdout]     | -------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 184 |     fn parse_track_element(reader: &mut Reader<BufReader<impl Read>>) -> Result<Track> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 267 |     fn parse_tuning(reader: &mut Reader<BufReader<impl Read>>) -> Result<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 334 |     fn parse_note_element(reader: &mut Reader<BufReader<impl Read>>) -> Result<Note> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 339 |     fn parse_bend_effect(reader: &mut Reader<BufReader<impl Read>>) -> Result<BendEffect> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 348 |     fn parse_track_property(track: &mut Track, attributes: Attributes) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 398 |     fn parse_slide_effect(attributes: Attributes) -> Result<Option<SlideEffect>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 438 |     fn parse_time_signature(attributes: Attributes) -> Result<TimeSignature> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 477 |     fn parse_key_signature(attributes: Attributes) -> Result<KeySignature> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `extract_mscz_archive` and `try_decompress_gzip` are never used
[INFO] [stdout]   --> src/parsers/musescore.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl MuseScoreReader {
[INFO] [stdout]    | -------------------- associated functions in this implementation
[INFO] [stdout] 17 |     /// Extract MuseScore archive
[INFO] [stdout] 18 |     fn extract_mscz_archive(data: &[u8]) -> Result<std::collections::HashMap<String, Vec<u8>>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn try_decompress_gzip(data: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `FORMAT_VERSION` and `create_compressed_file` are never used
[INFO] [stdout]    --> src/writers/musescore.rs:12:11
[INFO] [stdout]     |
[INFO] [stdout] 10  | impl MuseScoreWriter {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] 11  |     /// MuseScore file format version
[INFO] [stdout] 12  |     const FORMAT_VERSION: &'static str = "3.02";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 482 |     fn create_compressed_file(xml_content: &str) -> Result<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/parsers/gp3.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let key = cursor.read_i32::<LittleEndian>()? as i8;
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `octave`
[INFO] [stdout]   --> src/parsers/gp3.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let octave = cursor.read_u32::<LittleEndian>()?; // Usually 0
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_octave`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track`
[INFO] [stdout]   --> src/parsers/gp3.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let track = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_track`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flags2`
[INFO] [stdout]    --> src/parsers/gp3.rs:232:9
[INFO] [stdout]     |
[INFO] [stdout] 232 |     let flags2 = cursor.read_u8()?;
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_flags2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bend_type`
[INFO] [stdout]    --> src/parsers/gp3.rs:305:9
[INFO] [stdout]     |
[INFO] [stdout] 305 |     let bend_type = cursor.read_u8()?;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/parsers/gp4.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let key = cursor.read_i32::<LittleEndian>()? as i8;
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `octave`
[INFO] [stdout]   --> src/parsers/gp4.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let octave = cursor.read_u32::<LittleEndian>()?; // Skip octave
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_octave`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track_index`
[INFO] [stdout]    --> src/parsers/gp4.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let track_index = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_track_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_measure`
[INFO] [stdout]    --> src/parsers/gp4.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let from_measure = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_measure`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lyric`
[INFO] [stdout]    --> src/parsers/gp4.rs:114:13
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let lyric = read_gp_int_string(cursor)?;
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_lyric`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instrument`
[INFO] [stdout]    --> src/parsers/gp4.rs:128:13
[INFO] [stdout]     |
[INFO] [stdout] 128 |         let instrument = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instrument`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `volume`
[INFO] [stdout]    --> src/parsers/gp4.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let volume = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_volume`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `balance`
[INFO] [stdout]    --> src/parsers/gp4.rs:130:13
[INFO] [stdout]     |
[INFO] [stdout] 130 |         let balance = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_balance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chorus`
[INFO] [stdout]    --> src/parsers/gp4.rs:131:13
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let chorus = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_chorus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reverb`
[INFO] [stdout]    --> src/parsers/gp4.rs:132:13
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let reverb = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reverb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `phaser`
[INFO] [stdout]    --> src/parsers/gp4.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 133 |         let phaser = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_phaser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tremolo`
[INFO] [stdout]    --> src/parsers/gp4.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |         let tremolo = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tremolo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_banjo`
[INFO] [stdout]    --> src/parsers/gp4.rs:216:9
[INFO] [stdout]     |
[INFO] [stdout] 216 |     let is_banjo = flags & 0x04 != 0;
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_banjo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port`
[INFO] [stdout]    --> src/parsers/gp4.rs:232:9
[INFO] [stdout]     |
[INFO] [stdout] 232 |     let port = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel2`
[INFO] [stdout]    --> src/parsers/gp4.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |     let channel2 = cursor.read_u32::<LittleEndian>()? as u8;
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fret_count`
[INFO] [stdout]    --> src/parsers/gp4.rs:235:9
[INFO] [stdout]     |
[INFO] [stdout] 235 |     let fret_count = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fret_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]    --> src/parsers/gp4.rs:212:43
[INFO] [stdout]     |
[INFO] [stdout] 212 | fn read_track(cursor: &mut Cursor<&[u8]>, channel: u8) -> Result<Track> {
[INFO] [stdout]     |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_dotted`
[INFO] [stdout]    --> src/parsers/gp4.rs:338:9
[INFO] [stdout]     |
[INFO] [stdout] 338 |     let is_dotted = cursor.read_u8()? != 0;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_dotted`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tuplet`
[INFO] [stdout]    --> src/parsers/gp4.rs:339:9
[INFO] [stdout]     |
[INFO] [stdout] 339 |     let tuplet = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tuplet`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bend_type`
[INFO] [stdout]    --> src/parsers/gp4.rs:421:9
[INFO] [stdout]     |
[INFO] [stdout] 421 |     let bend_type = cursor.read_u8()?;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bend_value`
[INFO] [stdout]    --> src/parsers/gp4.rs:422:9
[INFO] [stdout]     |
[INFO] [stdout] 422 |     let bend_value = cursor.read_u32::<LittleEndian>()? as f32 / 100.0;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vibrato`
[INFO] [stdout]    --> src/parsers/gp4.rs:429:13
[INFO] [stdout]     |
[INFO] [stdout] 429 |         let vibrato = cursor.read_u8()? != 0;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vibrato`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sharp`
[INFO] [stdout]    --> src/parsers/gp4.rs:461:9
[INFO] [stdout]     |
[INFO] [stdout] 461 |     let sharp = cursor.read_u8()? != 0;
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_sharp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ninth_extension`
[INFO] [stdout]    --> src/parsers/gp4.rs:466:9
[INFO] [stdout]     |
[INFO] [stdout] 466 |     let ninth_extension = cursor.read_u8()?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ninth_extension`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `diminished_fifth`
[INFO] [stdout]    --> src/parsers/gp4.rs:468:9
[INFO] [stdout]     |
[INFO] [stdout] 468 |     let diminished_fifth = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_diminished_fifth`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `augmented_eleventh`
[INFO] [stdout]    --> src/parsers/gp4.rs:469:9
[INFO] [stdout]     |
[INFO] [stdout] 469 |     let augmented_eleventh = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_augmented_eleventh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channels`
[INFO] [stdout]   --> src/parsers/gp5.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let channels = read_channels(&mut cursor)?;
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track_choice`
[INFO] [stdout]    --> src/parsers/gp5.rs:106:9
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let track_choice = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_track_choice`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `line`
[INFO] [stdout]    --> src/parsers/gp5.rs:108:13
[INFO] [stdout]     |
[INFO] [stdout] 108 |         let line = read_gp_int_string(cursor)?;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_line`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `measure`
[INFO] [stdout]    --> src/parsers/gp5.rs:109:13
[INFO] [stdout]     |
[INFO] [stdout] 109 |         let measure = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_measure`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_banjo`
[INFO] [stdout]    --> src/parsers/gp5.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |     let is_banjo = (header & 0x04) != 0;
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_banjo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port`
[INFO] [stdout]    --> src/parsers/gp5.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 |     let port = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel2`
[INFO] [stdout]    --> src/parsers/gp5.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 186 |     let channel2 = cursor.read_u32::<LittleEndian>()? as u8;
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `frets`
[INFO] [stdout]    --> src/parsers/gp5.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 |     let frets = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_frets`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]    --> src/parsers/gp5.rs:165:43
[INFO] [stdout]     |
[INFO] [stdout] 165 | fn read_track(cursor: &mut Cursor<&[u8]>, channel: u8) -> Result<Track> {
[INFO] [stdout]     |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `repeat_count`
[INFO] [stdout]    --> src/parsers/gp5.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |         let repeat_count = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_repeat_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `alternative`
[INFO] [stdout]    --> src/parsers/gp5.rs:271:13
[INFO] [stdout]     |
[INFO] [stdout] 271 |         let alternative = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_alternative`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `marker_name`
[INFO] [stdout]    --> src/parsers/gp5.rs:276:13
[INFO] [stdout]     |
[INFO] [stdout] 276 |         let marker_name = read_gp_int_string(cursor)?;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_marker_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `marker_color`
[INFO] [stdout]    --> src/parsers/gp5.rs:277:13
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let marker_color = (cursor.read_u8()?, cursor.read_u8()?, cursor.read_u8()?);
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_marker_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `text`
[INFO] [stdout]    --> src/parsers/gp5.rs:336:13
[INFO] [stdout]     |
[INFO] [stdout] 336 |         let text = read_gp_int_string(cursor)?;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_text`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_dotted`
[INFO] [stdout]    --> src/parsers/gp5.rs:369:9
[INFO] [stdout]     |
[INFO] [stdout] 369 |     let is_dotted = cursor.read_u8()? != 0;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_dotted`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `base_fret`
[INFO] [stdout]    --> src/parsers/gp5.rs:418:13
[INFO] [stdout]     |
[INFO] [stdout] 418 |         let base_fret = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_base_fret`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `effect`
[INFO] [stdout]    --> src/parsers/gp5.rs:443:13
[INFO] [stdout]     |
[INFO] [stdout] 443 |         let effect = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_effect`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stroke_up`
[INFO] [stdout]    --> src/parsers/gp5.rs:453:13
[INFO] [stdout]     |
[INFO] [stdout] 453 |         let stroke_up = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stroke_up`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stroke_down`
[INFO] [stdout]    --> src/parsers/gp5.rs:454:13
[INFO] [stdout]     |
[INFO] [stdout] 454 |         let stroke_down = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stroke_down`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pick_stroke`
[INFO] [stdout]    --> src/parsers/gp5.rs:459:13
[INFO] [stdout]     |
[INFO] [stdout] 459 |         let pick_stroke = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pick_stroke`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position`
[INFO] [stdout]    --> src/parsers/gp5.rs:469:13
[INFO] [stdout]     |
[INFO] [stdout] 469 |         let position = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/parsers/gp5.rs:470:13
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let value = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vibrato`
[INFO] [stdout]    --> src/parsers/gp5.rs:471:13
[INFO] [stdout]     |
[INFO] [stdout] 471 |         let vibrato = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vibrato`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `note_type`
[INFO] [stdout]    --> src/parsers/gp5.rs:487:9
[INFO] [stdout]     |
[INFO] [stdout] 487 |     let note_type = if (flags & 0x20) != 0 {
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_note_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tremolo_speed`
[INFO] [stdout]    --> src/parsers/gp5.rs:544:13
[INFO] [stdout]     |
[INFO] [stdout] 544 |         let tremolo_speed = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tremolo_speed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `harmonic_type`
[INFO] [stdout]    --> src/parsers/gp5.rs:561:13
[INFO] [stdout]     |
[INFO] [stdout] 561 |         let harmonic_type = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_harmonic_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `trill_fret`
[INFO] [stdout]    --> src/parsers/gp5.rs:566:13
[INFO] [stdout]     |
[INFO] [stdout] 566 |         let trill_fret = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_trill_fret`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `trill_speed`
[INFO] [stdout]    --> src/parsers/gp5.rs:567:13
[INFO] [stdout]     |
[INFO] [stdout] 567 |         let trill_speed = cursor.read_u8()?;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_trill_speed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bend_type`
[INFO] [stdout]    --> src/parsers/gp5.rs:582:9
[INFO] [stdout]     |
[INFO] [stdout] 582 |     let bend_type = cursor.read_u8()?;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bend_value`
[INFO] [stdout]    --> src/parsers/gp5.rs:583:9
[INFO] [stdout]     |
[INFO] [stdout] 583 |     let bend_value = cursor.read_u32::<LittleEndian>()?;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vibrato`
[INFO] [stdout]    --> src/parsers/gp5.rs:591:13
[INFO] [stdout]     |
[INFO] [stdout] 591 |         let vibrato = cursor.read_u8()? != 0;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vibrato`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]   --> src/parsers/gpx.rs:68:33
[INFO] [stdout]    |
[INFO] [stdout] 68 | ...                   let channel = 0u8;
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_percussion`
[INFO] [stdout]   --> src/parsers/gpx.rs:69:33
[INFO] [stdout]    |
[INFO] [stdout] 69 | ...                   let is_percussion = false;
[INFO] [stdout]    |                           ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_percussion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reader`
[INFO] [stdout]    --> src/parsers/gpx.rs:334:27
[INFO] [stdout]     |
[INFO] [stdout] 334 |     fn parse_note_element(reader: &mut Reader<BufReader<impl Read>>) -> Result<Note> {
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reader`
[INFO] [stdout]    --> src/parsers/gpx.rs:339:26
[INFO] [stdout]     |
[INFO] [stdout] 339 |     fn parse_bend_effect(reader: &mut Reader<BufReader<impl Read>>) -> Result<BendEffect> {
[INFO] [stdout]     |                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/parsers/musescore.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn read_score(data: &[u8]) -> super::Result<crate::Score> {
[INFO] [stdout]    |                   ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pitch`
[INFO] [stdout]    --> src/writers/musescore.rs:174:14
[INFO] [stdout]     |
[INFO] [stdout] 174 |         let (pitch, octave) = Self::midi_to_pitch_octave(midi_note);
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_pitch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `octave`
[INFO] [stdout]    --> src/writers/musescore.rs:174:21
[INFO] [stdout]     |
[INFO] [stdout] 174 |         let (pitch, octave) = Self::midi_to_pitch_octave(midi_note);
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_octave`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instrument_name`
[INFO] [stdout]    --> src/writers/musescore.rs:287:13
[INFO] [stdout]     |
[INFO] [stdout] 287 |         let instrument_name = if track.is_percussion {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instrument_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/writers/musescore.rs:299:18
[INFO] [stdout]     |
[INFO] [stdout] 299 |             for (i, &tuning_note) in track.tuning.iter().enumerate() {
[INFO] [stdout]     |                  ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instrument_name`
[INFO] [stdout]    --> src/writers/musescore.rs:319:13
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let instrument_name = if track.is_percussion {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instrument_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track_id`
[INFO] [stdout]    --> src/writers/musescore.rs:318:40
[INFO] [stdout]     |
[INFO] [stdout] 318 |     fn write_instrument(track: &Track, track_id: usize) -> String {
[INFO] [stdout]     |                                        ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_track_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]    --> src/writers/gp4.rs:255:66
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn write_track(cursor: &mut Cursor<&mut Vec<u8>>, track: &Track, channel: u8) -> Result<()> {
[INFO] [stdout]     |                                                                  ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]    --> src/writers/gp5.rs:155:53
[INFO] [stdout]     |
[INFO] [stdout] 155 | fn write_track(buffer: &mut Vec<u8>, track: &Track, index: u8) -> Result<()> {
[INFO] [stdout]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `beat`
[INFO] [stdout]    --> src/writers/gpx.rs:298:34
[INFO] [stdout]     |
[INFO] [stdout] 298 |                 for (beat_index, beat) in measure.beats.iter().enumerate() {
[INFO] [stdout]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_beat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `note`
[INFO] [stdout]    --> src/writers/gpx.rs:341:25
[INFO] [stdout]     |
[INFO] [stdout] 341 |                     for note in &beat.notes {
[INFO] [stdout]     |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_note`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_gzip_compressed` is never used
[INFO] [stdout]   --> src/parsers/mod.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn is_gzip_compressed(data: &[u8]) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decompress_gzip` is never used
[INFO] [stdout]   --> src/parsers/mod.rs:84:4
[INFO] [stdout]    |
[INFO] [stdout] 84 | fn decompress_gzip(data: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `double_bar`, `repeat_open`, and `repeat_close` are never read
[INFO] [stdout]    --> src/parsers/gp4.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 141 | struct MeasureHeader {
[INFO] [stdout]     |        ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 147 |     double_bar: bool,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 148 |     repeat_open: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 149 |     repeat_close: u8,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MeasureHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/parsers/gp5.rs:602:5
[INFO] [stdout]     |
[INFO] [stdout] 601 | struct Channel {
[INFO] [stdout]     |        ------- fields in this struct
[INFO] [stdout] 602 |     index: u8,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 603 |     instrument: u32,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 604 |     volume: u8,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 605 |     balance: u8,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 606 |     chorus: u8,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 607 |     reverb: u8,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 608 |     phaser: u8,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 609 |     tremolo: u8,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Channel` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `double_bar` is never read
[INFO] [stdout]    --> src/parsers/gp5.rs:617:5
[INFO] [stdout]     |
[INFO] [stdout] 613 | struct MeasureHeader {
[INFO] [stdout]     |        ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 617 |     double_bar: bool,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MeasureHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> src/parsers/gpx.rs:184:8
[INFO] [stdout]     |
[INFO] [stdout] 28  | impl GpxReader {
[INFO] [stdout]     | -------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 184 |     fn parse_track_element(reader: &mut Reader<BufReader<impl Read>>) -> Result<Track> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 267 |     fn parse_tuning(reader: &mut Reader<BufReader<impl Read>>) -> Result<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 334 |     fn parse_note_element(reader: &mut Reader<BufReader<impl Read>>) -> Result<Note> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 339 |     fn parse_bend_effect(reader: &mut Reader<BufReader<impl Read>>) -> Result<BendEffect> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 348 |     fn parse_track_property(track: &mut Track, attributes: Attributes) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 398 |     fn parse_slide_effect(attributes: Attributes) -> Result<Option<SlideEffect>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 477 |     fn parse_key_signature(attributes: Attributes) -> Result<KeySignature> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `extract_mscz_archive` and `try_decompress_gzip` are never used
[INFO] [stdout]   --> src/parsers/musescore.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl MuseScoreReader {
[INFO] [stdout]    | -------------------- associated functions in this implementation
[INFO] [stdout] 17 |     /// Extract MuseScore archive
[INFO] [stdout] 18 |     fn extract_mscz_archive(data: &[u8]) -> Result<std::collections::HashMap<String, Vec<u8>>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn try_decompress_gzip(data: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `FORMAT_VERSION` and `create_compressed_file` are never used
[INFO] [stdout]    --> src/writers/musescore.rs:12:11
[INFO] [stdout]     |
[INFO] [stdout] 10  | impl MuseScoreWriter {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] 11  |     /// MuseScore file format version
[INFO] [stdout] 12  |     const FORMAT_VERSION: &'static str = "3.02";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 482 |     fn create_compressed_file(xml_content: &str) -> Result<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 5.57s
[INFO] running `Command { std: "docker" "inspect" "f74a2538fb32049a4ebc5af1ad9cc6541c1d68e237598ee46d6016cd679b2869", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f74a2538fb32049a4ebc5af1ad9cc6541c1d68e237598ee46d6016cd679b2869", kill_on_drop: false }`
[INFO] [stdout] f74a2538fb32049a4ebc5af1ad9cc6541c1d68e237598ee46d6016cd679b2869
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a3e90c6de2587e6b3a3a66c9a0c47ab7db3e9717211191703b08286b684887f7
[INFO] running `Command { std: "docker" "start" "-a" "a3e90c6de2587e6b3a3a66c9a0c47ab7db3e9717211191703b08286b684887f7", kill_on_drop: false }`
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]   --> src/parsers/gp3.rs:54:13
[INFO] [stderr]    |
[INFO] [stderr] 54 |         let key = cursor.read_i32::<LittleEndian>()? as i8;
[INFO] [stderr]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `octave`
[INFO] [stderr]   --> src/parsers/gp3.rs:55:13
[INFO] [stderr]    |
[INFO] [stderr] 55 |         let octave = cursor.read_u32::<LittleEndian>()?; // Usually 0
[INFO] [stderr]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_octave`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `track`
[INFO] [stderr]   --> src/parsers/gp3.rs:78:9
[INFO] [stderr]    |
[INFO] [stderr] 78 |     let track = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_track`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `flags2`
[INFO] [stderr]    --> src/parsers/gp3.rs:232:9
[INFO] [stderr]     |
[INFO] [stderr] 232 |     let flags2 = cursor.read_u8()?;
[INFO] [stderr]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_flags2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bend_type`
[INFO] [stderr]    --> src/parsers/gp3.rs:305:9
[INFO] [stderr]     |
[INFO] [stderr] 305 |     let bend_type = cursor.read_u8()?;
[INFO] [stderr]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_type`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]   --> src/parsers/gp4.rs:35:13
[INFO] [stderr]    |
[INFO] [stderr] 35 |         let key = cursor.read_i32::<LittleEndian>()? as i8;
[INFO] [stderr]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `octave`
[INFO] [stderr]   --> src/parsers/gp4.rs:36:13
[INFO] [stderr]    |
[INFO] [stderr] 36 |         let octave = cursor.read_u32::<LittleEndian>()?; // Skip octave
[INFO] [stderr]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_octave`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `track_index`
[INFO] [stderr]    --> src/parsers/gp4.rs:110:9
[INFO] [stderr]     |
[INFO] [stderr] 110 |     let track_index = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_track_index`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `from_measure`
[INFO] [stderr]    --> src/parsers/gp4.rs:113:13
[INFO] [stderr]     |
[INFO] [stderr] 113 |         let from_measure = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_measure`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `lyric`
[INFO] [stderr]    --> src/parsers/gp4.rs:114:13
[INFO] [stderr]     |
[INFO] [stderr] 114 |         let lyric = read_gp_int_string(cursor)?;
[INFO] [stderr]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_lyric`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `instrument`
[INFO] [stderr]    --> src/parsers/gp4.rs:128:13
[INFO] [stderr]     |
[INFO] [stderr] 128 |         let instrument = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instrument`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `volume`
[INFO] [stderr]    --> src/parsers/gp4.rs:129:13
[INFO] [stderr]     |
[INFO] [stderr] 129 |         let volume = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_volume`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `balance`
[INFO] [stderr]    --> src/parsers/gp4.rs:130:13
[INFO] [stderr]     |
[INFO] [stderr] 130 |         let balance = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_balance`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `chorus`
[INFO] [stderr]    --> src/parsers/gp4.rs:131:13
[INFO] [stderr]     |
[INFO] [stderr] 131 |         let chorus = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_chorus`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `reverb`
[INFO] [stderr]    --> src/parsers/gp4.rs:132:13
[INFO] [stderr]     |
[INFO] [stderr] 132 |         let reverb = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reverb`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `phaser`
[INFO] [stderr]    --> src/parsers/gp4.rs:133:13
[INFO] [stderr]     |
[INFO] [stderr] 133 |         let phaser = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_phaser`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tremolo`
[INFO] [stderr]    --> src/parsers/gp4.rs:134:13
[INFO] [stderr]     |
[INFO] [stderr] 134 |         let tremolo = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tremolo`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `is_banjo`
[INFO] [stderr]    --> src/parsers/gp4.rs:216:9
[INFO] [stderr]     |
[INFO] [stderr] 216 |     let is_banjo = flags & 0x04 != 0;
[INFO] [stderr]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_banjo`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `port`
[INFO] [stderr]    --> src/parsers/gp4.rs:232:9
[INFO] [stderr]     |
[INFO] [stderr] 232 |     let port = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_port`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `channel2`
[INFO] [stderr]    --> src/parsers/gp4.rs:234:9
[INFO] [stderr]     |
[INFO] [stderr] 234 |     let channel2 = cursor.read_u32::<LittleEndian>()? as u8;
[INFO] [stderr]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `fret_count`
[INFO] [stderr]    --> src/parsers/gp4.rs:235:9
[INFO] [stderr]     |
[INFO] [stderr] 235 |     let fret_count = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fret_count`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `channel`
[INFO] [stderr]    --> src/parsers/gp4.rs:212:43
[INFO] [stderr]     |
[INFO] [stderr] 212 | fn read_track(cursor: &mut Cursor<&[u8]>, channel: u8) -> Result<Track> {
[INFO] [stderr]     |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `is_dotted`
[INFO] [stderr]    --> src/parsers/gp4.rs:338:9
[INFO] [stderr]     |
[INFO] [stderr] 338 |     let is_dotted = cursor.read_u8()? != 0;
[INFO] [stderr]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_dotted`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tuplet`
[INFO] [stderr]    --> src/parsers/gp4.rs:339:9
[INFO] [stderr]     |
[INFO] [stderr] 339 |     let tuplet = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tuplet`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bend_type`
[INFO] [stderr]    --> src/parsers/gp4.rs:421:9
[INFO] [stderr]     |
[INFO] [stderr] 421 |     let bend_type = cursor.read_u8()?;
[INFO] [stderr]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_type`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bend_value`
[INFO] [stderr]    --> src/parsers/gp4.rs:422:9
[INFO] [stderr]     |
[INFO] [stderr] 422 |     let bend_value = cursor.read_u32::<LittleEndian>()? as f32 / 100.0;
[INFO] [stderr]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `vibrato`
[INFO] [stderr]    --> src/parsers/gp4.rs:429:13
[INFO] [stderr]     |
[INFO] [stderr] 429 |         let vibrato = cursor.read_u8()? != 0;
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vibrato`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `sharp`
[INFO] [stderr]    --> src/parsers/gp4.rs:461:9
[INFO] [stderr]     |
[INFO] [stderr] 461 |     let sharp = cursor.read_u8()? != 0;
[INFO] [stderr]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_sharp`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ninth_extension`
[INFO] [stderr]    --> src/parsers/gp4.rs:466:9
[INFO] [stderr]     |
[INFO] [stderr] 466 |     let ninth_extension = cursor.read_u8()?;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ninth_extension`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `diminished_fifth`
[INFO] [stderr]    --> src/parsers/gp4.rs:468:9
[INFO] [stderr]     |
[INFO] [stderr] 468 |     let diminished_fifth = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_diminished_fifth`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `augmented_eleventh`
[INFO] [stderr]    --> src/parsers/gp4.rs:469:9
[INFO] [stderr]     |
[INFO] [stderr] 469 |     let augmented_eleventh = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_augmented_eleventh`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `channels`
[INFO] [stderr]   --> src/parsers/gp5.rs:40:13
[INFO] [stderr]    |
[INFO] [stderr] 40 |         let channels = read_channels(&mut cursor)?;
[INFO] [stderr]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channels`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `track_choice`
[INFO] [stderr]    --> src/parsers/gp5.rs:106:9
[INFO] [stderr]     |
[INFO] [stderr] 106 |     let track_choice = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_track_choice`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `line`
[INFO] [stderr]    --> src/parsers/gp5.rs:108:13
[INFO] [stderr]     |
[INFO] [stderr] 108 |         let line = read_gp_int_string(cursor)?;
[INFO] [stderr]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_line`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `measure`
[INFO] [stderr]    --> src/parsers/gp5.rs:109:13
[INFO] [stderr]     |
[INFO] [stderr] 109 |         let measure = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_measure`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `is_banjo`
[INFO] [stderr]    --> src/parsers/gp5.rs:169:9
[INFO] [stderr]     |
[INFO] [stderr] 169 |     let is_banjo = (header & 0x04) != 0;
[INFO] [stderr]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_banjo`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `port`
[INFO] [stderr]    --> src/parsers/gp5.rs:184:9
[INFO] [stderr]     |
[INFO] [stderr] 184 |     let port = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_port`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `channel2`
[INFO] [stderr]    --> src/parsers/gp5.rs:186:9
[INFO] [stderr]     |
[INFO] [stderr] 186 |     let channel2 = cursor.read_u32::<LittleEndian>()? as u8;
[INFO] [stderr]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `frets`
[INFO] [stderr]    --> src/parsers/gp5.rs:187:9
[INFO] [stderr]     |
[INFO] [stderr] 187 |     let frets = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_frets`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `channel`
[INFO] [stderr]    --> src/parsers/gp5.rs:165:43
[INFO] [stderr]     |
[INFO] [stderr] 165 | fn read_track(cursor: &mut Cursor<&[u8]>, channel: u8) -> Result<Track> {
[INFO] [stderr]     |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `repeat_count`
[INFO] [stderr]    --> src/parsers/gp5.rs:266:13
[INFO] [stderr]     |
[INFO] [stderr] 266 |         let repeat_count = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_repeat_count`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `alternative`
[INFO] [stderr]    --> src/parsers/gp5.rs:271:13
[INFO] [stderr]     |
[INFO] [stderr] 271 |         let alternative = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_alternative`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `marker_name`
[INFO] [stderr]    --> src/parsers/gp5.rs:276:13
[INFO] [stderr]     |
[INFO] [stderr] 276 |         let marker_name = read_gp_int_string(cursor)?;
[INFO] [stderr]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_marker_name`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `marker_color`
[INFO] [stderr]    --> src/parsers/gp5.rs:277:13
[INFO] [stderr]     |
[INFO] [stderr] 277 |         let marker_color = (cursor.read_u8()?, cursor.read_u8()?, cursor.read_u8()?);
[INFO] [stderr]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_marker_color`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `text`
[INFO] [stderr]    --> src/parsers/gp5.rs:336:13
[INFO] [stderr]     |
[INFO] [stderr] 336 |         let text = read_gp_int_string(cursor)?;
[INFO] [stderr]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_text`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `is_dotted`
[INFO] [stderr]    --> src/parsers/gp5.rs:369:9
[INFO] [stderr]     |
[INFO] [stderr] 369 |     let is_dotted = cursor.read_u8()? != 0;
[INFO] [stderr]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_dotted`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `base_fret`
[INFO] [stderr]    --> src/parsers/gp5.rs:418:13
[INFO] [stderr]     |
[INFO] [stderr] 418 |         let base_fret = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_base_fret`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `effect`
[INFO] [stderr]    --> src/parsers/gp5.rs:443:13
[INFO] [stderr]     |
[INFO] [stderr] 443 |         let effect = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_effect`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `stroke_up`
[INFO] [stderr]    --> src/parsers/gp5.rs:453:13
[INFO] [stderr]     |
[INFO] [stderr] 453 |         let stroke_up = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stroke_up`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `stroke_down`
[INFO] [stderr]    --> src/parsers/gp5.rs:454:13
[INFO] [stderr]     |
[INFO] [stderr] 454 |         let stroke_down = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stroke_down`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `pick_stroke`
[INFO] [stderr]    --> src/parsers/gp5.rs:459:13
[INFO] [stderr]     |
[INFO] [stderr] 459 |         let pick_stroke = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pick_stroke`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `position`
[INFO] [stderr]    --> src/parsers/gp5.rs:469:13
[INFO] [stderr]     |
[INFO] [stderr] 469 |         let position = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/parsers/gp5.rs:470:13
[INFO] [stderr]     |
[INFO] [stderr] 470 |         let value = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `vibrato`
[INFO] [stderr]    --> src/parsers/gp5.rs:471:13
[INFO] [stderr]     |
[INFO] [stderr] 471 |         let vibrato = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vibrato`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `note_type`
[INFO] [stderr]    --> src/parsers/gp5.rs:487:9
[INFO] [stderr]     |
[INFO] [stderr] 487 |     let note_type = if (flags & 0x20) != 0 {
[INFO] [stderr]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_note_type`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tremolo_speed`
[INFO] [stderr]    --> src/parsers/gp5.rs:544:13
[INFO] [stderr]     |
[INFO] [stderr] 544 |         let tremolo_speed = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tremolo_speed`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `harmonic_type`
[INFO] [stderr]    --> src/parsers/gp5.rs:561:13
[INFO] [stderr]     |
[INFO] [stderr] 561 |         let harmonic_type = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_harmonic_type`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `trill_fret`
[INFO] [stderr]    --> src/parsers/gp5.rs:566:13
[INFO] [stderr]     |
[INFO] [stderr] 566 |         let trill_fret = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_trill_fret`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `trill_speed`
[INFO] [stderr]    --> src/parsers/gp5.rs:567:13
[INFO] [stderr]     |
[INFO] [stderr] 567 |         let trill_speed = cursor.read_u8()?;
[INFO] [stderr]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_trill_speed`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bend_type`
[INFO] [stderr]    --> src/parsers/gp5.rs:582:9
[INFO] [stderr]     |
[INFO] [stderr] 582 |     let bend_type = cursor.read_u8()?;
[INFO] [stderr]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_type`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bend_value`
[INFO] [stderr]    --> src/parsers/gp5.rs:583:9
[INFO] [stderr]     |
[INFO] [stderr] 583 |     let bend_value = cursor.read_u32::<LittleEndian>()?;
[INFO] [stderr]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bend_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `vibrato`
[INFO] [stderr]    --> src/parsers/gp5.rs:591:13
[INFO] [stderr]     |
[INFO] [stderr] 591 |         let vibrato = cursor.read_u8()? != 0;
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vibrato`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `channel`
[INFO] [stderr]   --> src/parsers/gpx.rs:68:33
[INFO] [stderr]    |
[INFO] [stderr] 68 | ...                   let channel = 0u8;
[INFO] [stderr]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `is_percussion`
[INFO] [stderr]   --> src/parsers/gpx.rs:69:33
[INFO] [stderr]    |
[INFO] [stderr] 69 | ...                   let is_percussion = false;
[INFO] [stderr]    |                           ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_percussion`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `reader`
[INFO] [stderr]    --> src/parsers/gpx.rs:334:27
[INFO] [stderr]     |
[INFO] [stderr] 334 |     fn parse_note_element(reader: &mut Reader<BufReader<impl Read>>) -> Result<Note> {
[INFO] [stderr]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `reader`
[INFO] [stderr]    --> src/parsers/gpx.rs:339:26
[INFO] [stderr]     |
[INFO] [stderr] 339 |     fn parse_bend_effect(reader: &mut Reader<BufReader<impl Read>>) -> Result<BendEffect> {
[INFO] [stderr]     |                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `data`
[INFO] [stderr]   --> src/parsers/musescore.rs:11:19
[INFO] [stderr]    |
[INFO] [stderr] 11 |     fn read_score(data: &[u8]) -> super::Result<crate::Score> {
[INFO] [stderr]    |                   ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `pitch`
[INFO] [stderr]    --> src/writers/musescore.rs:174:14
[INFO] [stderr]     |
[INFO] [stderr] 174 |         let (pitch, octave) = Self::midi_to_pitch_octave(midi_note);
[INFO] [stderr]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_pitch`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `octave`
[INFO] [stderr]    --> src/writers/musescore.rs:174:21
[INFO] [stderr]     |
[INFO] [stderr] 174 |         let (pitch, octave) = Self::midi_to_pitch_octave(midi_note);
[INFO] [stderr]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_octave`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `instrument_name`
[INFO] [stderr]    --> src/writers/musescore.rs:287:13
[INFO] [stderr]     |
[INFO] [stderr] 287 |         let instrument_name = if track.is_percussion {
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instrument_name`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]    --> src/writers/musescore.rs:299:18
[INFO] [stderr]     |
[INFO] [stderr] 299 |             for (i, &tuning_note) in track.tuning.iter().enumerate() {
[INFO] [stderr]     |                  ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `instrument_name`
[INFO] [stderr]    --> src/writers/musescore.rs:319:13
[INFO] [stderr]     |
[INFO] [stderr] 319 |         let instrument_name = if track.is_percussion {
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instrument_name`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `track_id`
[INFO] [stderr]    --> src/writers/musescore.rs:318:40
[INFO] [stderr]     |
[INFO] [stderr] 318 |     fn write_instrument(track: &Track, track_id: usize) -> String {
[INFO] [stderr]     |                                        ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_track_id`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `channel`
[INFO] [stderr]    --> src/writers/gp4.rs:255:66
[INFO] [stderr]     |
[INFO] [stderr] 255 | fn write_track(cursor: &mut Cursor<&mut Vec<u8>>, track: &Track, channel: u8) -> Result<()> {
[INFO] [stderr]     |                                                                  ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `index`
[INFO] [stderr]    --> src/writers/gp5.rs:155:53
[INFO] [stderr]     |
[INFO] [stderr] 155 | fn write_track(buffer: &mut Vec<u8>, track: &Track, index: u8) -> Result<()> {
[INFO] [stderr]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `beat`
[INFO] [stderr]    --> src/writers/gpx.rs:298:34
[INFO] [stderr]     |
[INFO] [stderr] 298 |                 for (beat_index, beat) in measure.beats.iter().enumerate() {
[INFO] [stderr]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_beat`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `note`
[INFO] [stderr]    --> src/writers/gpx.rs:341:25
[INFO] [stderr]     |
[INFO] [stderr] 341 |                     for note in &beat.notes {
[INFO] [stderr]     |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_note`
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_gzip_compressed` is never used
[INFO] [stderr]   --> src/parsers/mod.rs:79:4
[INFO] [stderr]    |
[INFO] [stderr] 79 | fn is_gzip_compressed(data: &[u8]) -> bool {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `decompress_gzip` is never used
[INFO] [stderr]   --> src/parsers/mod.rs:84:4
[INFO] [stderr]    |
[INFO] [stderr] 84 | fn decompress_gzip(data: &[u8]) -> Result<Vec<u8>> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `double_bar`, `repeat_open`, and `repeat_close` are never read
[INFO] [stderr]    --> src/parsers/gp4.rs:147:5
[INFO] [stderr]     |
[INFO] [stderr] 141 | struct MeasureHeader {
[INFO] [stderr]     |        ------------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 147 |     double_bar: bool,
[INFO] [stderr]     |     ^^^^^^^^^^
[INFO] [stderr] 148 |     repeat_open: bool,
[INFO] [stderr]     |     ^^^^^^^^^^^
[INFO] [stderr] 149 |     repeat_close: u8,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `MeasureHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple fields are never read
[INFO] [stderr]    --> src/parsers/gp5.rs:602:5
[INFO] [stderr]     |
[INFO] [stderr] 601 | struct Channel {
[INFO] [stderr]     |        ------- fields in this struct
[INFO] [stderr] 602 |     index: u8,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 603 |     instrument: u32,
[INFO] [stderr]     |     ^^^^^^^^^^
[INFO] [stderr] 604 |     volume: u8,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 605 |     balance: u8,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 606 |     chorus: u8,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 607 |     reverb: u8,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 608 |     phaser: u8,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 609 |     tremolo: u8,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `Channel` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `double_bar` is never read
[INFO] [stderr]    --> src/parsers/gp5.rs:617:5
[INFO] [stderr]     |
[INFO] [stderr] 613 | struct MeasureHeader {
[INFO] [stderr]     |        ------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 617 |     double_bar: bool,
[INFO] [stderr]     |     ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `MeasureHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated functions are never used
[INFO] [stderr]    --> src/parsers/gpx.rs:184:8
[INFO] [stderr]     |
[INFO] [stderr] 28  | impl GpxReader {
[INFO] [stderr]     | -------------- associated functions in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 184 |     fn parse_track_element(reader: &mut Reader<BufReader<impl Read>>) -> Result<Track> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 267 |     fn parse_tuning(reader: &mut Reader<BufReader<impl Read>>) -> Result<Vec<u8>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 334 |     fn parse_note_element(reader: &mut Reader<BufReader<impl Read>>) -> Result<Note> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 339 |     fn parse_bend_effect(reader: &mut Reader<BufReader<impl Read>>) -> Result<BendEffect> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 348 |     fn parse_track_property(track: &mut Track, attributes: Attributes) -> Result<()> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 398 |     fn parse_slide_effect(attributes: Attributes) -> Result<Option<SlideEffect>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 438 |     fn parse_time_signature(attributes: Attributes) -> Result<TimeSignature> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 477 |     fn parse_key_signature(attributes: Attributes) -> Result<KeySignature> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated functions `extract_mscz_archive` and `try_decompress_gzip` are never used
[INFO] [stderr]   --> src/parsers/musescore.rs:18:8
[INFO] [stderr]    |
[INFO] [stderr] 16 | impl MuseScoreReader {
[INFO] [stderr]    | -------------------- associated functions in this implementation
[INFO] [stderr] 17 |     /// Extract MuseScore archive
[INFO] [stderr] 18 |     fn extract_mscz_archive(data: &[u8]) -> Result<std::collections::HashMap<String, Vec<u8>>> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 43 |     fn try_decompress_gzip(data: &[u8]) -> Result<Vec<u8>> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `FORMAT_VERSION` and `create_compressed_file` are never used
[INFO] [stderr]    --> src/writers/musescore.rs:12:11
[INFO] [stderr]     |
[INFO] [stderr] 10  | impl MuseScoreWriter {
[INFO] [stderr]     | -------------------- associated items in this implementation
[INFO] [stderr] 11  |     /// MuseScore file format version
[INFO] [stderr] 12  |     const FORMAT_VERSION: &'static str = "3.02";
[INFO] [stderr]     |           ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 482 |     fn create_compressed_file(xml_content: &str) -> Result<Vec<u8>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated functions are never used
[INFO] [stderr]    --> src/parsers/gpx.rs:184:8
[INFO] [stderr]     |
[INFO] [stderr] 28  | impl GpxReader {
[INFO] [stderr]     | -------------- associated functions in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 184 |     fn parse_track_element(reader: &mut Reader<BufReader<impl Read>>) -> Result<Track> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 267 |     fn parse_tuning(reader: &mut Reader<BufReader<impl Read>>) -> Result<Vec<u8>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 334 |     fn parse_note_element(reader: &mut Reader<BufReader<impl Read>>) -> Result<Note> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 339 |     fn parse_bend_effect(reader: &mut Reader<BufReader<impl Read>>) -> Result<BendEffect> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 348 |     fn parse_track_property(track: &mut Track, attributes: Attributes) -> Result<()> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 398 |     fn parse_slide_effect(attributes: Attributes) -> Result<Option<SlideEffect>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 477 |     fn parse_key_signature(attributes: Attributes) -> Result<KeySignature> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `score-tab` (lib) generated 85 warnings
[INFO] [stderr] warning: `score-tab` (lib test) generated 85 warnings (84 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/guitarpro-23905dfd0734701d)
[INFO] [stdout] 
[INFO] [stdout] running 33 tests
[INFO] [stdout] test analysis::tests::test_detect_bass_note_empty ... ok
[INFO] [stdout] test analysis::tests::test_detect_bass_note_unsorted ... ok
[INFO] [stdout] test analysis::tests::test_generate_chord_name ... ok
[INFO] [stdout] test analysis::tests::test_detect_bass_note_with_multiple_octaves ... ok
[INFO] [stdout] test analysis::tests::test_detect_bass_note_with_pitches ... ok
[INFO] [stdout] test tests::test_key_signature_names ... ok
[INFO] [stdout] test parsers::tests::test_format_detection ... ok
[INFO] [stdout] test tests::test_note_duration_conversion ... ok
[INFO] [stdout] test utils::tests::test_valid_midi_notes ... ok
[INFO] [stdout] test tests::test_time_signature_beats ... ok
[INFO] [stdout] test writers::gp3::tests::test_duration_conversion ... ok
[INFO] [stdout] test writers::gp3::tests::test_write_score_with_metadata ... ok
[INFO] [stdout] test parsers::gpx::tests::test_gpx_detection ... ok
[INFO] [stdout] test writers::gp::tests::test_write_empty_score ... ok
[INFO] [stdout] test writers::gp3::tests::test_write_score_with_track ... ok
[INFO] [stdout] test writers::gp::tests::test_write_simple_score ... ok
[INFO] [stdout] test writers::gp::tests::test_round_trip ... ok
[INFO] [stdout] test writers::gpx::tests::test_duration_to_string ... ok
[INFO] [stdout] test writers::gpx::tests::test_empty_score_generation ... ok
[INFO] [stdout] test utils::tests::test_note_midi_conversion ... ok
[INFO] [stdout] test writers::gp3::tests::test_write_empty_score ... ok
[INFO] [stdout] test writers::gpx::tests::test_score_with_tracks ... ok
[INFO] [stdout] test writers::gpx::tests::test_xml_escaping ... ok
[INFO] [stdout] test writers::gpx::tests::test_score_with_metadata ... ok
[INFO] [stdout] test writers::gpx::tests::test_roundtrip_compatibility ... ok
[INFO] [stdout] test writers::musescore::tests::test_duration_conversion ... ok
[INFO] [stdout] test writers::musescore::tests::test_escape_xml ... ok
[INFO] [stdout] test writers::musescore::tests::test_duration_to_ticks ... ok
[INFO] [stdout] test writers::musescore::tests::test_write_score_with_track ... ok
[INFO] [stdout] test writers::musescore::tests::test_write_empty_score ... ok
[INFO] [stdout] test parsers::gpx::tests::test_time_signature_parsing ... FAILED
[INFO] [stdout] test utils::tests::test_invalid_midi_note ... FAILED
[INFO] [stdout] test writers::musescore::tests::test_midi_to_pitch_octave ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- parsers::gpx::tests::test_time_signature_parsing stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'parsers::gpx::tests::test_time_signature_parsing' panicked at src/parsers/gpx.rs:555:13:
[INFO] [stdout] Unexpected event
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x565ae4cda032 - std::backtrace_rs::backtrace::libunwind::trace::hd39b1f53d3cf9745
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x565ae4cda032 - std::backtrace_rs::backtrace::trace_unsynchronized::he91d9a75d4e3972b
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x565ae4cda032 - std::sys::backtrace::_print_fmt::hca46938f8c6e22cf
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x565ae4cda032 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::ha499add612cccf8e
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x565ae4cffe73 - core::fmt::rt::Argument::fmt::hd21145b75a833b7a
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x565ae4cffe73 - core::fmt::write::hb10c956f5235c8a4
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/fmt/mod.rs:1465:25
[INFO] [stdout]    6:     0x565ae4cd7213 - std::io::default_write_fmt::hdb7615052be2ba4d
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x565ae4cd7213 - std::io::Write::write_fmt::he1bcd251ec6e4153
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x565ae4cd9e82 - std::sys::backtrace::BacktraceLock::print::hb47c770ef659fd10
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x565ae4cdb59c - std::panicking::default_hook::{{closure}}::hdda8afb9d457a22c
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:300:27
[INFO] [stdout]   10:     0x565ae4cdb3f2 - std::panicking::default_hook::h7c46b44874fe5c9a
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:324:9
[INFO] [stdout]   11:     0x565ae4c9a3e4 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h178a5fcedee41e2f
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   12:     0x565ae4c9a3e4 - test::test_main_with_exit_callback::{{closure}}::h951a41e0149d6d5d
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x565ae4cdbf7b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h13602080f5b63276
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   14:     0x565ae4cdbf7b - std::panicking::rust_panic_with_hook::ha6cb99ed099eb1c5
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:841:13
[INFO] [stdout]   15:     0x565ae4cdbd16 - std::panicking::begin_panic_handler::{{closure}}::he11808bc797ee921
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:699:13
[INFO] [stdout]   16:     0x565ae4cda529 - std::sys::backtrace::__rust_end_short_backtrace::h9418807cb7346258
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   17:     0x565ae4cdb9dd - __rustc[18fb429eef004894]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:697:5
[INFO] [stdout]   18:     0x565ae4cfe310 - core::panicking::panic_fmt::hd890aeb12c3a3fc3
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x565ae4c59a96 - guitarpro::parsers::gpx::tests::test_time_signature_parsing::h0afa0aeba4c09d25
[INFO] [stdout]                                at /opt/rustwide/workdir/src/parsers/gpx.rs:555:13
[INFO] [stdout]   20:     0x565ae4c5ad89 - guitarpro::parsers::gpx::tests::test_time_signature_parsing::{{closure}}::h186a5d71f5de9b0e
[INFO] [stdout]                                at /opt/rustwide/workdir/src/parsers/gpx.rs:536:37
[INFO] [stdout]   21:     0x565ae4c5ad89 - core::ops::function::FnOnce::call_once::h8d80b7aece5521c1
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x565ae4c9fb6b - core::ops::function::FnOnce::call_once::h2869fb5b0a2b0bdc
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x565ae4c9fb6b - test::__rust_begin_short_backtrace::h7dd7142bd62fa711
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:648:18
[INFO] [stdout]   24:     0x565ae4c9ed5e - test::run_test_in_process::{{closure}}::h43a753f038d36b3f
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:671:74
[INFO] [stdout]   25:     0x565ae4c9ed5e - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h0ca95dd3e12d1e16
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   26:     0x565ae4c9ed5e - std::panicking::catch_unwind::do_call::he308587d70ac34ba
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:589:40
[INFO] [stdout]   27:     0x565ae4c9ed5e - std::panicking::catch_unwind::h30dcba31973e8fb0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:552:19
[INFO] [stdout]   28:     0x565ae4c9ed5e - std::panic::catch_unwind::hfb68364e5621fbee
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x565ae4c9ed5e - test::run_test_in_process::hcdcc2977903b998a
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:671:27
[INFO] [stdout]   30:     0x565ae4c9ed5e - test::run_test::{{closure}}::h544a6550958c5d14
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:592:43
[INFO] [stdout]   31:     0x565ae4c628d4 - test::run_test::{{closure}}::hb172e48ebe2b92c7
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:622:41
[INFO] [stdout]   32:     0x565ae4c628d4 - std::sys::backtrace::__rust_begin_short_backtrace::h7e79d8706638bea0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:152:18
[INFO] [stdout]   33:     0x565ae4c662aa - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hc4a275f1e71b8ab0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   34:     0x565ae4c662aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h01ed0d242df78cfd
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   35:     0x565ae4c662aa - std::panicking::catch_unwind::do_call::h052f373fb905fee0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:589:40
[INFO] [stdout]   36:     0x565ae4c662aa - std::panicking::catch_unwind::hb425d20c8ffb09c8
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:552:19
[INFO] [stdout]   37:     0x565ae4c662aa - std::panic::catch_unwind::ha0d5dfbf18fdeda5
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x565ae4c662aa - std::thread::Builder::spawn_unchecked_::{{closure}}::hbe79182bd37949c7
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   39:     0x565ae4c662aa - core::ops::function::FnOnce::call_once{{vtable.shim}}::hc096c4a06972fde5
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x565ae4cdeed7 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h47377e27fb938a26
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   41:     0x565ae4cdeed7 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h72f1fe5d095abf57
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   42:     0x565ae4cdeed7 - std::sys::pal::unix::thread::Thread::new::thread_start::h0a4d8e1b9c0d38cf
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/pal/unix/thread.rs:97:17
[INFO] [stdout]   43:     0x7c2674f91aa4 - <unknown>
[INFO] [stdout]   44:     0x7c267501ea34 - clone
[INFO] [stdout]   45:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- utils::tests::test_invalid_midi_note stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'utils::tests::test_invalid_midi_note' panicked at src/utils.rs:429:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: "G#9"
[INFO] [stdout]  right: "Invalid MIDI Note"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x565ae4cda032 - std::backtrace_rs::backtrace::libunwind::trace::hd39b1f53d3cf9745
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x565ae4cda032 - std::backtrace_rs::backtrace::trace_unsynchronized::he91d9a75d4e3972b
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x565ae4cda032 - std::sys::backtrace::_print_fmt::hca46938f8c6e22cf
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x565ae4cda032 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::ha499add612cccf8e
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x565ae4cffe73 - core::fmt::rt::Argument::fmt::hd21145b75a833b7a
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x565ae4cffe73 - core::fmt::write::hb10c956f5235c8a4
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/fmt/mod.rs:1465:25
[INFO] [stdout]    6:     0x565ae4cd7213 - std::io::default_write_fmt::hdb7615052be2ba4d
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x565ae4cd7213 - std::io::Write::write_fmt::he1bcd251ec6e4153
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x565ae4cd9e82 - std::sys::backtrace::BacktraceLock::print::hb47c770ef659fd10
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x565ae4cdb59c - std::panicking::default_hook::{{closure}}::hdda8afb9d457a22c
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:300:27
[INFO] [stdout]   10:     0x565ae4cdb3f2 - std::panicking::default_hook::h7c46b44874fe5c9a
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:324:9
[INFO] [stdout]   11:     0x565ae4c9a3e4 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h178a5fcedee41e2f
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   12:     0x565ae4c9a3e4 - test::test_main_with_exit_callback::{{closure}}::h951a41e0149d6d5d
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x565ae4cdbf7b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h13602080f5b63276
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   14:     0x565ae4cdbf7b - std::panicking::rust_panic_with_hook::ha6cb99ed099eb1c5
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:841:13
[INFO] [stdout]   15:     0x565ae4cdbd4a - std::panicking::begin_panic_handler::{{closure}}::he11808bc797ee921
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:706:13
[INFO] [stdout]   16:     0x565ae4cda529 - std::sys::backtrace::__rust_end_short_backtrace::h9418807cb7346258
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   17:     0x565ae4cdb9dd - __rustc[18fb429eef004894]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:697:5
[INFO] [stdout]   18:     0x565ae4cfe310 - core::panicking::panic_fmt::hd890aeb12c3a3fc3
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x565ae4cfe5a7 - core::panicking::assert_failed_inner::h02e1528dd7bc6647
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panicking.rs:448:17
[INFO] [stdout]   20:     0x565ae4c59413 - core::panicking::assert_failed::h5e67e35255d2bd0d
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panicking.rs:403:5
[INFO] [stdout]   21:     0x565ae4c60dc6 - guitarpro::utils::tests::test_invalid_midi_note::h4f959bbb877c71b9
[INFO] [stdout]                                at /opt/rustwide/workdir/src/utils.rs:429:9
[INFO] [stdout]   22:     0x565ae4c5ac29 - guitarpro::utils::tests::test_invalid_midi_note::{{closure}}::haac3d36333d494aa
[INFO] [stdout]                                at /opt/rustwide/workdir/src/utils.rs:428:32
[INFO] [stdout]   23:     0x565ae4c5ac29 - core::ops::function::FnOnce::call_once::h106573ea04f67bad
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x565ae4c9fb6b - core::ops::function::FnOnce::call_once::h2869fb5b0a2b0bdc
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x565ae4c9fb6b - test::__rust_begin_short_backtrace::h7dd7142bd62fa711
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:648:18
[INFO] [stdout]   26:     0x565ae4c9ed5e - test::run_test_in_process::{{closure}}::h43a753f038d36b3f
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:671:74
[INFO] [stdout]   27:     0x565ae4c9ed5e - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h0ca95dd3e12d1e16
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   28:     0x565ae4c9ed5e - std::panicking::catch_unwind::do_call::he308587d70ac34ba
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:589:40
[INFO] [stdout]   29:     0x565ae4c9ed5e - std::panicking::catch_unwind::h30dcba31973e8fb0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:552:19
[INFO] [stdout]   30:     0x565ae4c9ed5e - std::panic::catch_unwind::hfb68364e5621fbee
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x565ae4c9ed5e - test::run_test_in_process::hcdcc2977903b998a
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:671:27
[INFO] [stdout]   32:     0x565ae4c9ed5e - test::run_test::{{closure}}::h544a6550958c5d14
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:592:43
[INFO] [stdout]   33:     0x565ae4c628d4 - test::run_test::{{closure}}::hb172e48ebe2b92c7
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:622:41
[INFO] [stdout]   34:     0x565ae4c628d4 - std::sys::backtrace::__rust_begin_short_backtrace::h7e79d8706638bea0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:152:18
[INFO] [stdout]   35:     0x565ae4c662aa - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hc4a275f1e71b8ab0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   36:     0x565ae4c662aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h01ed0d242df78cfd
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   37:     0x565ae4c662aa - std::panicking::catch_unwind::do_call::h052f373fb905fee0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:589:40
[INFO] [stdout]   38:     0x565ae4c662aa - std::panicking::catch_unwind::hb425d20c8ffb09c8
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:552:19
[INFO] [stdout]   39:     0x565ae4c662aa - std::panic::catch_unwind::ha0d5dfbf18fdeda5
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x565ae4c662aa - std::thread::Builder::spawn_unchecked_::{{closure}}::hbe79182bd37949c7
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   41:     0x565ae4c662aa - core::ops::function::FnOnce::call_once{{vtable.shim}}::hc096c4a06972fde5
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x565ae4cdeed7 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h47377e27fb938a26
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   43:     0x565ae4cdeed7 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h72f1fe5d095abf57
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   44:     0x565ae4cdeed7 - std::sys::pal::unix::thread::Thread::new::thread_start::h0a4d8e1b9c0d38cf
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/pal/unix/thread.rs:97:17
[INFO] [stdout]   45:     0x7c2674f91aa4 - <unknown>
[INFO] [stdout]   46:     0x7c267501ea34 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- writers::musescore::tests::test_midi_to_pitch_octave stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'writers::musescore::tests::test_midi_to_pitch_octave' panicked at src/writers/musescore.rs:563:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: 4
[INFO] [stdout]  right: 5
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x565ae4cda032 - std::backtrace_rs::backtrace::libunwind::trace::hd39b1f53d3cf9745
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x565ae4cda032 - std::backtrace_rs::backtrace::trace_unsynchronized::he91d9a75d4e3972b
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x565ae4cda032 - std::sys::backtrace::_print_fmt::hca46938f8c6e22cf
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x565ae4cda032 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::ha499add612cccf8e
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x565ae4cffe73 - core::fmt::rt::Argument::fmt::hd21145b75a833b7a
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x565ae4cffe73 - core::fmt::write::hb10c956f5235c8a4
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/fmt/mod.rs:1465:25
[INFO] [stdout]    6:     0x565ae4cd7213 - std::io::default_write_fmt::hdb7615052be2ba4d
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x565ae4cd7213 - std::io::Write::write_fmt::he1bcd251ec6e4153
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x565ae4cd9e82 - std::sys::backtrace::BacktraceLock::print::hb47c770ef659fd10
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x565ae4cdb59c - std::panicking::default_hook::{{closure}}::hdda8afb9d457a22c
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:300:27
[INFO] [stdout]   10:     0x565ae4cdb3f2 - std::panicking::default_hook::h7c46b44874fe5c9a
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:324:9
[INFO] [stdout]   11:     0x565ae4c9a3e4 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h178a5fcedee41e2f
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   12:     0x565ae4c9a3e4 - test::test_main_with_exit_callback::{{closure}}::h951a41e0149d6d5d
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x565ae4cdbf7b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h13602080f5b63276
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   14:     0x565ae4cdbf7b - std::panicking::rust_panic_with_hook::ha6cb99ed099eb1c5
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:841:13
[INFO] [stdout]   15:     0x565ae4cdbd4a - std::panicking::begin_panic_handler::{{closure}}::he11808bc797ee921
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:706:13
[INFO] [stdout]   16:     0x565ae4cda529 - std::sys::backtrace::__rust_end_short_backtrace::h9418807cb7346258
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   17:     0x565ae4cdb9dd - __rustc[18fb429eef004894]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:697:5
[INFO] [stdout]   18:     0x565ae4cfe310 - core::panicking::panic_fmt::hd890aeb12c3a3fc3
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x565ae4cfe5a7 - core::panicking::assert_failed_inner::h02e1528dd7bc6647
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panicking.rs:448:17
[INFO] [stdout]   20:     0x565ae4cbcaf6 - core::panicking::assert_failed::h8d7cc7a1e1cfc347
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panicking.rs:403:5
[INFO] [stdout]   21:     0x565ae4c57d01 - guitarpro::writers::musescore::tests::test_midi_to_pitch_octave::hd2c4324d69c62a1c
[INFO] [stdout]                                at /opt/rustwide/workdir/src/writers/musescore.rs:563:9
[INFO] [stdout]   22:     0x565ae4c5aee9 - guitarpro::writers::musescore::tests::test_midi_to_pitch_octave::{{closure}}::h658683b1b1c95774
[INFO] [stdout]                                at /opt/rustwide/workdir/src/writers/musescore.rs:556:35
[INFO] [stdout]   23:     0x565ae4c5aee9 - core::ops::function::FnOnce::call_once::hf570069d5590fe65
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x565ae4c9fb6b - core::ops::function::FnOnce::call_once::h2869fb5b0a2b0bdc
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x565ae4c9fb6b - test::__rust_begin_short_backtrace::h7dd7142bd62fa711
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:648:18
[INFO] [stdout]   26:     0x565ae4c9ed5e - test::run_test_in_process::{{closure}}::h43a753f038d36b3f
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:671:74
[INFO] [stdout]   27:     0x565ae4c9ed5e - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h0ca95dd3e12d1e16
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   28:     0x565ae4c9ed5e - std::panicking::catch_unwind::do_call::he308587d70ac34ba
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:589:40
[INFO] [stdout]   29:     0x565ae4c9ed5e - std::panicking::catch_unwind::h30dcba31973e8fb0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:552:19
[INFO] [stdout]   30:     0x565ae4c9ed5e - std::panic::catch_unwind::hfb68364e5621fbee
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x565ae4c9ed5e - test::run_test_in_process::hcdcc2977903b998a
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:671:27
[INFO] [stdout]   32:     0x565ae4c9ed5e - test::run_test::{{closure}}::h544a6550958c5d14
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:592:43
[INFO] [stdout]   33:     0x565ae4c628d4 - test::run_test::{{closure}}::hb172e48ebe2b92c7
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:622:41
[INFO] [stdout]   34:     0x565ae4c628d4 - std::sys::backtrace::__rust_begin_short_backtrace::h7e79d8706638bea0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:152:18
[INFO] [stdout]   35:     0x565ae4c662aa - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hc4a275f1e71b8ab0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   36:     0x565ae4c662aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h01ed0d242df78cfd
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   37:     0x565ae4c662aa - std::panicking::catch_unwind::do_call::h052f373fb905fee0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:589:40
[INFO] [stdout]   38:     0x565ae4c662aa - std::panicking::catch_unwind::hb425d20c8ffb09c8
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:552:19
[INFO] [stdout]   39:     0x565ae4c662aa - std::panic::catch_unwind::ha0d5dfbf18fdeda5
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x565ae4c662aa - std::thread::Builder::spawn_unchecked_::{{closure}}::hbe79182bd37949c7
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   41:     0x565ae4c662aa - core::ops::function::FnOnce::call_once{{vtable.shim}}::hc096c4a06972fde5
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x565ae4cdeed7 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h47377e27fb938a26
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   43:     0x565ae4cdeed7 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h72f1fe5d095abf57
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   44:     0x565ae4cdeed7 - std::sys::pal::unix::thread::Thread::new::thread_start::h0a4d8e1b9c0d38cf
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/pal/unix/thread.rs:97:17
[INFO] [stdout]   45:     0x7c2674f91aa4 - <unknown>
[INFO] [stdout]   46:     0x7c267501ea34 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     parsers::gpx::tests::test_time_signature_parsing
[INFO] [stdout]     utils::tests::test_invalid_midi_note
[INFO] [stdout]     writers::musescore::tests::test_midi_to_pitch_octave
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 30 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "a3e90c6de2587e6b3a3a66c9a0c47ab7db3e9717211191703b08286b684887f7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a3e90c6de2587e6b3a3a66c9a0c47ab7db3e9717211191703b08286b684887f7", kill_on_drop: false }`
[INFO] [stdout] a3e90c6de2587e6b3a3a66c9a0c47ab7db3e9717211191703b08286b684887f7
