[INFO] cloning repository https://github.com/AlterionX/pass-converter-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AlterionX/pass-converter-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlterionX%2Fpass-converter-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlterionX%2Fpass-converter-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 209fbe9377bf42ef9c25969fab491e7eb36ec987
[INFO] checking AlterionX/pass-converter-rs against master#3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0 for pr-143164
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlterionX%2Fpass-converter-rs" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/AlterionX/pass-converter-rs
[INFO] finished tweaking git repo https://github.com/AlterionX/pass-converter-rs
[INFO] tweaked toml for git repo https://github.com/AlterionX/pass-converter-rs written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/AlterionX/pass-converter-rs on toolchain 3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/AlterionX/pass-converter-rs 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" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 10be3cfcf597459a01a4a2f6876e0461be322f57b9db7061c882b222cc9475ae
[INFO] running `Command { std: "docker" "start" "-a" "10be3cfcf597459a01a4a2f6876e0461be322f57b9db7061c882b222cc9475ae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "10be3cfcf597459a01a4a2f6876e0461be322f57b9db7061c882b222cc9475ae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "10be3cfcf597459a01a4a2f6876e0461be322f57b9db7061c882b222cc9475ae", kill_on_drop: false }`
[INFO] [stdout] 10be3cfcf597459a01a4a2f6876e0461be322f57b9db7061c882b222cc9475ae
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d52b24a6ccc5de4b984a8c62079edd236403a7dbe1823c01f6f6982483d5e17b
[INFO] running `Command { std: "docker" "start" "-a" "d52b24a6ccc5de4b984a8c62079edd236403a7dbe1823c01f6f6982483d5e17b", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling libc v0.2.140
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling typenum v1.16.0
[INFO] [stderr]    Compiling pkg-config v0.3.26
[INFO] [stderr]    Compiling crossbeam-utils v0.8.15
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]     Checking subtle v2.4.1
[INFO] [stderr]    Compiling rayon-core v1.11.0
[INFO] [stderr]     Checking adler v1.0.2
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]     Checking cpufeatures v0.2.5
[INFO] [stderr]     Checking adler32 v1.2.0
[INFO] [stderr]     Checking byteorder v1.4.3
[INFO] [stderr]     Checking either v1.8.1
[INFO] [stderr]    Compiling zstd-safe v5.0.2+zstd.1.5.2
[INFO] [stderr]     Checking weezl v0.1.7
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking miniz_oxide v0.3.7
[INFO] [stderr]     Checking base64ct v1.6.0
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]    Compiling serde v1.0.156
[INFO] [stderr]     Checking miniz_oxide v0.6.2
[INFO] [stderr]    Compiling serde_json v1.0.94
[INFO] [stderr]     Checking time-core v0.1.0
[INFO] [stderr]    Compiling anyhow v1.0.69
[INFO] [stderr]     Checking password-hash v0.4.2
[INFO] [stderr]     Checking scoped_threadpool v0.1.9
[INFO] [stderr]     Checking opaque-debug v0.3.0
[INFO] [stderr]     Checking bytemuck v1.13.1
[INFO] [stderr]     Checking gif v0.11.4
[INFO] [stderr]     Checking deflate v0.8.6
[INFO] [stderr]     Checking time v0.3.20
[INFO] [stderr]     Checking iana-time-zone v0.1.53
[INFO] [stderr]    Compiling memoffset v0.8.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.14
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling generic-array v0.14.6
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]     Checking crossbeam-channel v0.5.7
[INFO] [stderr]    Compiling miniz_oxide v0.4.4
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling num-rational v0.3.2
[INFO] [stderr]     Checking flate2 v1.0.25
[INFO] [stderr]     Checking constant_time_eq v0.1.5
[INFO] [stderr]     Checking itoa v1.0.6
[INFO] [stderr]     Checking ryu v1.0.13
[INFO] [stderr]     Checking checked_int_cast v1.0.0
[INFO] [stderr]     Checking png v0.16.8
[INFO] [stderr]     Checking crossbeam-deque v0.8.3
[INFO] [stderr]    Compiling jobserver v0.1.26
[INFO] [stderr]    Compiling cc v1.0.79
[INFO] [stderr]     Checking num_cpus v1.15.0
[INFO] [stderr]     Checking time v0.1.45
[INFO] [stderr]     Checking rayon v1.7.0
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking cipher v0.3.0
[INFO] [stderr]     Checking digest v0.10.6
[INFO] [stderr]     Checking aes v0.7.5
[INFO] [stderr]     Checking chrono v0.4.24
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking sha2 v0.10.6
[INFO] [stderr]     Checking sha1 v0.10.5
[INFO] [stderr]    Compiling zstd-sys v2.0.7+zstd.1.5.4
[INFO] [stderr]    Compiling bzip2-sys v0.1.11+1.0.8
[INFO] [stderr]     Checking pbkdf2 v0.11.0
[INFO] [stderr]     Checking bzip2 v0.4.4
[INFO] [stderr]     Checking jpeg-decoder v0.1.22
[INFO] [stderr]     Checking tiff v0.6.1
[INFO] [stderr]     Checking image v0.23.14
[INFO] [stderr]     Checking zstd v0.11.2+zstd.1.5.2
[INFO] [stderr]     Checking zip v0.6.4
[INFO] [stderr]     Checking qrcode v0.12.0
[INFO] [stderr]     Checking pass-converter-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `zip::result::ZipResult`
[INFO] [stdout]  --> src/pass.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use zip::result::ZipResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufWriter` and `Stdin`
[INFO] [stdout]  --> src/main.rs:3:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::{fs::File, io::{Stdin, Write, BufWriter}};
[INFO] [stdout]   |                          ^^^^^         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GoogleWalletPass`
[INFO] [stdout]  --> src/main.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 | use pass::{Pass, PkPass, GoogleWalletPass, PassFormat};
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zip::result::ZipResult`
[INFO] [stdout]  --> src/pass.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use zip::result::ZipResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufWriter` and `Stdin`
[INFO] [stdout]  --> src/main.rs:3:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::{fs::File, io::{Stdin, Write, BufWriter}};
[INFO] [stdout]   |                          ^^^^^         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GoogleWalletPass`
[INFO] [stdout]  --> src/main.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 | use pass::{Pass, PkPass, GoogleWalletPass, PassFormat};
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `year`
[INFO] [stdout]   --> src/pass.rs:77:42
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn extract(json: &serde_json::Value, year: i32) -> Result<Self, anyhow::Error> {
[INFO] [stdout]    |                                          ^^^^ help: if this is intentional, prefix it with an underscore: `_year`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `year`
[INFO] [stdout]    --> src/pass.rs:141:42
[INFO] [stdout]     |
[INFO] [stdout] 141 |     fn extract(json: &serde_json::Value, year: i32) -> Result<Self, anyhow::Error> {
[INFO] [stdout]     |                                          ^^^^ help: if this is intentional, prefix it with an underscore: `_year`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `json`
[INFO] [stdout]    --> src/pass.rs:305:16
[INFO] [stdout]     |
[INFO] [stdout] 305 |     fn extract(json: &serde_json::Map<String, serde_json::Value>, internal_json: &serde_json::Value, year: i32) -> Result<Self, anyhow::E...
[INFO] [stdout]     |                ^^^^ help: if this is intentional, prefix it with an underscore: `_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pass`
[INFO] [stdout]    --> src/pass.rs:491:13
[INFO] [stdout]     |
[INFO] [stdout] 491 |     fn from(pass: GoogleWalletPass) -> Self {
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pass`
[INFO] [stdout]    --> src/pass.rs:497:13
[INFO] [stdout]     |
[INFO] [stdout] 497 |     fn from(pass: PkPass) -> Self {
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pass`
[INFO] [stdout]    --> src/pass.rs:503:13
[INFO] [stdout]     |
[INFO] [stdout] 503 |     fn from(pass: Pass) -> Self {
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pass`
[INFO] [stdout]    --> src/pass.rs:509:13
[INFO] [stdout]     |
[INFO] [stdout] 509 |     fn from(pass: Pass) -> Self {
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]   --> src/main.rs:73:16
[INFO] [stdout]    |
[INFO] [stdout] 73 |             if let PkPassSubtype::Flight(ref flight) = pkpass.subtype {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]    = help: consider replacing the `if let` with a `let`
[INFO] [stdout]    = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gpass`
[INFO] [stdout]    --> src/main.rs:139:21
[INFO] [stdout]     |
[INFO] [stdout] 139 |         (None, Some(gpass)) => {
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_gpass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `outcome`
[INFO] [stdout]    --> src/main.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |     let outcome = match res {
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_outcome`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output`
[INFO] [stdout]    --> src/main.rs:186:15
[INFO] [stdout]     |
[INFO] [stdout] 186 | fn write_pass(output: impl Write, pass: Pass, format: PassFormat) -> Result<(), anyhow::Error> {
[INFO] [stdout]     |               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pass`
[INFO] [stdout]    --> src/main.rs:186:35
[INFO] [stdout]     |
[INFO] [stdout] 186 | fn write_pass(output: impl Write, pass: Pass, format: PassFormat) -> Result<(), anyhow::Error> {
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_pass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `format`
[INFO] [stdout]    --> src/main.rs:186:47
[INFO] [stdout]     |
[INFO] [stdout] 186 | fn write_pass(output: impl Write, pass: Pass, format: PassFormat) -> Result<(), anyhow::Error> {
[INFO] [stdout]     |                                               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_format`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PkPass` is never constructed
[INFO] [stdout]  --> src/pass.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum PassFormat {
[INFO] [stdout]   |          ---------- variant in this enum
[INFO] [stdout] 6 |     GPass,
[INFO] [stdout] 7 |     PkPass,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `format` and `encoding` are never read
[INFO] [stdout]   --> src/pass.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct PkPassBarcode {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 71 |     pub format: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 72 |     pub message: String,
[INFO] [stdout] 73 |     pub encoding: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PkPassBarcode` 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: fields `format_version`, `organization_name`, `team_identifier`, `description`, `background_color`, and `foreground_color` are never read
[INFO] [stdout]    --> src/pass.rs:128:9
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub struct PkPassBase {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub format_version: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub organization_name: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 132 |     pub team_identifier: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 133 |
[INFO] [stdout] 134 |     pub description: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 135 |
[INFO] [stdout] 136 |     pub background_color: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 137 |     pub foreground_color: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PkPassBase` 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 `label` is never read
[INFO] [stdout]    --> src/pass.rs:237:9
[INFO] [stdout]     |
[INFO] [stdout] 235 | pub struct PkPassValue {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 236 |     pub key: String,
[INFO] [stdout] 237 |     pub label: String,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PkPassValue` 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 `transit_type` is never read
[INFO] [stdout]    --> src/pass.rs:299:5
[INFO] [stdout]     |
[INFO] [stdout] 293 | pub struct PkPassFlight {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 299 |     transit_type: PkTransitType,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PkPassFlight` 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 methods are never used
[INFO] [stdout]    --> src/pass.rs:371:12
[INFO] [stdout]     |
[INFO] [stdout] 304 | impl PkPassFlight {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 371 |     pub fn details(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 379 |     pub fn ticket(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 387 |     pub fn frequent_flyer(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |     pub fn sequence(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |     pub fn flight_number(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 423 |     pub fn status(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 427 |     pub fn group(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `year`
[INFO] [stdout]   --> src/pass.rs:77:42
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn extract(json: &serde_json::Value, year: i32) -> Result<Self, anyhow::Error> {
[INFO] [stdout]    |                                          ^^^^ help: if this is intentional, prefix it with an underscore: `_year`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `year`
[INFO] [stdout]    --> src/pass.rs:141:42
[INFO] [stdout]     |
[INFO] [stdout] 141 |     fn extract(json: &serde_json::Value, year: i32) -> Result<Self, anyhow::Error> {
[INFO] [stdout]     |                                          ^^^^ help: if this is intentional, prefix it with an underscore: `_year`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `json`
[INFO] [stdout]    --> src/pass.rs:305:16
[INFO] [stdout]     |
[INFO] [stdout] 305 |     fn extract(json: &serde_json::Map<String, serde_json::Value>, internal_json: &serde_json::Value, year: i32) -> Result<Self, anyhow::E...
[INFO] [stdout]     |                ^^^^ help: if this is intentional, prefix it with an underscore: `_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pass`
[INFO] [stdout]    --> src/pass.rs:491:13
[INFO] [stdout]     |
[INFO] [stdout] 491 |     fn from(pass: GoogleWalletPass) -> Self {
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pass`
[INFO] [stdout]    --> src/pass.rs:497:13
[INFO] [stdout]     |
[INFO] [stdout] 497 |     fn from(pass: PkPass) -> Self {
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pass`
[INFO] [stdout]    --> src/pass.rs:503:13
[INFO] [stdout]     |
[INFO] [stdout] 503 |     fn from(pass: Pass) -> Self {
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pass`
[INFO] [stdout]    --> src/pass.rs:509:13
[INFO] [stdout]     |
[INFO] [stdout] 509 |     fn from(pass: Pass) -> Self {
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]   --> src/main.rs:73:16
[INFO] [stdout]    |
[INFO] [stdout] 73 |             if let PkPassSubtype::Flight(ref flight) = pkpass.subtype {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]    = help: consider replacing the `if let` with a `let`
[INFO] [stdout]    = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gpass`
[INFO] [stdout]    --> src/main.rs:139:21
[INFO] [stdout]     |
[INFO] [stdout] 139 |         (None, Some(gpass)) => {
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_gpass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `outcome`
[INFO] [stdout]    --> src/main.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |     let outcome = match res {
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_outcome`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output`
[INFO] [stdout]    --> src/main.rs:186:15
[INFO] [stdout]     |
[INFO] [stdout] 186 | fn write_pass(output: impl Write, pass: Pass, format: PassFormat) -> Result<(), anyhow::Error> {
[INFO] [stdout]     |               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pass`
[INFO] [stdout]    --> src/main.rs:186:35
[INFO] [stdout]     |
[INFO] [stdout] 186 | fn write_pass(output: impl Write, pass: Pass, format: PassFormat) -> Result<(), anyhow::Error> {
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_pass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `format`
[INFO] [stdout]    --> src/main.rs:186:47
[INFO] [stdout]     |
[INFO] [stdout] 186 | fn write_pass(output: impl Write, pass: Pass, format: PassFormat) -> Result<(), anyhow::Error> {
[INFO] [stdout]     |                                               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_format`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PkPass` is never constructed
[INFO] [stdout]  --> src/pass.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum PassFormat {
[INFO] [stdout]   |          ---------- variant in this enum
[INFO] [stdout] 6 |     GPass,
[INFO] [stdout] 7 |     PkPass,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `format` and `encoding` are never read
[INFO] [stdout]   --> src/pass.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct PkPassBarcode {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 71 |     pub format: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 72 |     pub message: String,
[INFO] [stdout] 73 |     pub encoding: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PkPassBarcode` 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: fields `format_version`, `organization_name`, `team_identifier`, `description`, `background_color`, and `foreground_color` are never read
[INFO] [stdout]    --> src/pass.rs:128:9
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub struct PkPassBase {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub format_version: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub organization_name: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 132 |     pub team_identifier: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 133 |
[INFO] [stdout] 134 |     pub description: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 135 |
[INFO] [stdout] 136 |     pub background_color: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 137 |     pub foreground_color: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PkPassBase` 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 `label` is never read
[INFO] [stdout]    --> src/pass.rs:237:9
[INFO] [stdout]     |
[INFO] [stdout] 235 | pub struct PkPassValue {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 236 |     pub key: String,
[INFO] [stdout] 237 |     pub label: String,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PkPassValue` 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 `transit_type` is never read
[INFO] [stdout]    --> src/pass.rs:299:5
[INFO] [stdout]     |
[INFO] [stdout] 293 | pub struct PkPassFlight {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 299 |     transit_type: PkTransitType,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PkPassFlight` 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 methods are never used
[INFO] [stdout]    --> src/pass.rs:371:12
[INFO] [stdout]     |
[INFO] [stdout] 304 | impl PkPassFlight {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 371 |     pub fn details(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 379 |     pub fn ticket(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 387 |     pub fn frequent_flyer(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |     pub fn sequence(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |     pub fn flight_number(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 423 |     pub fn status(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 427 |     pub fn group(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.95s
[INFO] running `Command { std: "docker" "inspect" "d52b24a6ccc5de4b984a8c62079edd236403a7dbe1823c01f6f6982483d5e17b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d52b24a6ccc5de4b984a8c62079edd236403a7dbe1823c01f6f6982483d5e17b", kill_on_drop: false }`
[INFO] [stdout] d52b24a6ccc5de4b984a8c62079edd236403a7dbe1823c01f6f6982483d5e17b
