[INFO] cloning repository https://github.com/miroreo/cta-discord-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/miroreo/cta-discord-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmiroreo%2Fcta-discord-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmiroreo%2Fcta-discord-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ac1712cd7e91afc97daac515e9475a77b4ab4f26 [INFO] testing miroreo/cta-discord-rust against master#ebf0cf75d368c035f4c7e7246d203bd469ee4a51 for pr-137940-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmiroreo%2Fcta-discord-rust" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/miroreo/cta-discord-rust on toolchain ebf0cf75d368c035f4c7e7246d203bd469ee4a51 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-5-tc1/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/miroreo/cta-discord-rust [INFO] finished tweaking git repo https://github.com/miroreo/cta-discord-rust [INFO] tweaked toml for git repo https://github.com/miroreo/cta-discord-rust written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/miroreo/cta-discord-rust 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" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded windows-targets v0.52.6 [INFO] [stderr] Downloaded icu_provider_macros v1.5.0 [INFO] [stderr] Downloaded time-core v0.1.2 [INFO] [stderr] Downloaded getrandom v0.3.1 [INFO] [stderr] Downloaded num-conv v0.1.0 [INFO] [stderr] Downloaded tower-service v0.3.3 [INFO] [stderr] Downloaded yoke-derive v0.7.5 [INFO] [stderr] Downloaded sync_wrapper v0.1.2 [INFO] [stderr] Downloaded errno v0.3.10 [INFO] [stderr] Downloaded rustls-pemfile v1.0.4 [INFO] [stderr] Downloaded core-foundation v0.9.4 [INFO] [stderr] Downloaded once_cell v1.20.3 [INFO] [stderr] Downloaded rustls-webpki v0.101.7 [INFO] [stderr] Downloaded bytecount v0.6.8 [INFO] [stderr] Downloaded ppv-lite86 v0.2.20 [INFO] [stderr] Downloaded rand_core v0.6.4 [INFO] [stderr] Downloaded windows-targets v0.48.5 [INFO] [stderr] Downloaded tokio-rustls v0.24.1 [INFO] [stderr] Downloaded wasm-streams v0.4.2 [INFO] [stderr] Downloaded crossbeam-channel v0.5.14 [INFO] [stderr] Downloaded chrono v0.4.39 [INFO] [stderr] Downloaded cc v1.2.13 [INFO] [stderr] Downloaded android-tzdata v0.1.1 [INFO] [stderr] Downloaded num-traits v0.2.19 [INFO] [stderr] Downloaded wasm-bindgen-shared v0.2.100 [INFO] [stderr] Downloaded wasm-bindgen-backend v0.2.100 [INFO] [stderr] Downloaded typemap_rev v0.3.0 [INFO] [stderr] Downloaded sha1 v0.10.6 [INFO] [stderr] Downloaded thiserror-impl v1.0.69 [INFO] [stderr] Downloaded tungstenite v0.21.0 [INFO] [stderr] Downloaded rustls-pki-types v1.11.0 [INFO] [stderr] Downloaded reqwest v0.11.27 [INFO] [stderr] Downloaded itertools v0.13.0 [INFO] [stderr] Downloaded windows-core v0.52.0 [INFO] [stderr] Downloaded bzip2-sys v0.1.11+1.0.8 [INFO] [stderr] Downloaded hyper v1.6.0 [INFO] [stderr] Downloaded rustls v0.21.12 [INFO] [stderr] Downloaded vcpkg v0.2.15 [INFO] [stderr] Downloaded iana-time-zone v0.1.61 [INFO] [stderr] Downloaded linux-raw-sys v0.4.15 [INFO] [stderr] Downloaded windows_x86_64_gnullvm v0.48.5 [INFO] [stderr] Downloaded zstd-sys v2.0.13+zstd.1.5.6 [INFO] [stderr] Downloaded futures-util v0.3.31 [INFO] [stderr] Downloaded fastrand v2.3.0 [INFO] [stderr] Downloaded openssl v0.10.70 [INFO] [stderr] Downloaded webpki-roots v0.25.4 [INFO] [stderr] Downloaded tokio-util v0.7.13 [INFO] [stderr] Downloaded http v1.2.0 [INFO] [stderr] Downloaded windows-sys v0.59.0 [INFO] [stderr] Downloaded hyper v0.14.32 [INFO] [stderr] Downloaded windows_x86_64_msvc v0.48.5 [INFO] [stderr] Downloaded tokio-tungstenite v0.21.0 [INFO] [stderr] Downloaded windows_i686_gnu v0.48.5 [INFO] [stderr] Downloaded windows_i686_msvc v0.48.5 [INFO] [stderr] Downloaded windows-sys v0.52.0 [INFO] [stderr] Downloaded windows_aarch64_gnullvm v0.48.5 [INFO] [stderr] Downloaded windows_x86_64_gnu v0.48.5 [INFO] [stderr] Downloaded h2 v0.4.7 [INFO] [stderr] Downloaded h2 v0.3.26 [INFO] [stderr] Downloaded thiserror v1.0.69 [INFO] [stderr] Downloaded utf-8 v0.7.6 [INFO] [stderr] Downloaded tracing-attributes v0.1.28 [INFO] [stderr] Downloaded tracing-core v0.1.33 [INFO] [stderr] Downloaded hashbrown v0.14.5 [INFO] [stderr] Downloaded pulldown-cmark v0.9.6 [INFO] [stderr] Downloaded rustls v0.22.4 [INFO] [stderr] Downloaded web-sys v0.3.77 [INFO] [stderr] Downloaded hyper-util v0.1.10 [INFO] [stderr] Downloaded hashbrown v0.15.2 [INFO] [stderr] Downloaded bumpalo v3.17.0 [INFO] [stderr] Downloaded aes v0.8.4 [INFO] [stderr] Downloaded openssl-sys v0.9.105 [INFO] [stderr] Downloaded wasi v0.13.3+wasi-0.2.2 [INFO] [stderr] Downloaded security-framework v2.11.1 [INFO] [stderr] Downloaded indexmap v2.7.1 [INFO] [stderr] Downloaded windows_aarch64_msvc v0.48.5 [INFO] [stderr] Downloaded http v0.2.12 [INFO] [stderr] Downloaded wasm-bindgen-macro-support v0.2.100 [INFO] [stderr] Downloaded zerocopy-derive v0.7.35 [INFO] [stderr] Downloaded generic-array v0.14.7 [INFO] [stderr] Downloaded webpki-roots v0.26.8 [INFO] [stderr] Downloaded tracing v0.1.41 [INFO] [stderr] Downloaded windows-sys v0.48.0 [INFO] [stderr] Downloaded typenum v1.17.0 [INFO] [stderr] Downloaded digest v0.10.7 [INFO] [stderr] Downloaded rustls v0.23.22 [INFO] [stderr] Downloaded byteorder v1.5.0 [INFO] [stderr] Downloaded block-buffer v0.10.4 [INFO] [stderr] Downloaded crypto-common v0.1.6 [INFO] [stderr] Downloaded subtle v2.6.1 [INFO] [stderr] Downloaded csv v1.3.1 [INFO] [stderr] Downloaded ring v0.17.8 [INFO] [stderr] Downloaded gtfs-structures v0.43.0 [INFO] [stderr] Downloaded rand v0.8.5 [INFO] [stderr] Downloaded zip v2.2.2 [INFO] [stderr] Downloaded windows_i686_gnu v0.52.6 [INFO] [stderr] Downloaded rustversion v1.0.19 [INFO] [stderr] Downloaded either v1.13.0 [INFO] [stderr] Downloaded wasm-bindgen-macro v0.2.100 [INFO] [stderr] Downloaded rustls-webpki v0.102.8 [INFO] [stderr] Downloaded wasm-bindgen v0.2.100 [INFO] [stderr] Downloaded zerocopy v0.7.35 [INFO] [stderr] Downloaded android_system_properties v0.1.5 [INFO] [stderr] Downloaded tower v0.5.2 [INFO] [stderr] Downloaded reqwest v0.12.12 [INFO] [stderr] Downloaded encoding_rs v0.8.35 [INFO] [stderr] Downloaded libc v0.2.169 [INFO] [stderr] Downloaded windows_aarch64_msvc v0.52.6 [INFO] [stderr] Downloaded windows_i686_msvc v0.52.6 [INFO] [stderr] Downloaded windows_x86_64_gnu v0.52.6 [INFO] [stderr] Downloaded windows_x86_64_msvc v0.52.6 [INFO] [stderr] Downloaded tokio v1.43.0 [INFO] [stderr] Downloaded glob v0.3.2 [INFO] [stderr] Downloaded schannel v0.1.27 [INFO] [stderr] Downloaded hashbrown v0.12.3 [INFO] [stderr] Downloaded serde_with v3.12.0 [INFO] [stderr] Downloaded flate2 v1.0.35 [INFO] [stderr] Downloaded mime_guess v2.0.5 [INFO] [stderr] Downloaded bytemuck v1.21.0 [INFO] [stderr] Downloaded sha2 v0.10.8 [INFO] [stderr] Downloaded hmac v0.12.1 [INFO] [stderr] Downloaded zopfli v0.8.1 [INFO] [stderr] Downloaded http-body-util v0.1.2 [INFO] [stderr] Downloaded hyper-tls v0.6.0 [INFO] [stderr] Downloaded atomic-waker v1.1.2 [INFO] [stderr] Downloaded rustls-pemfile v2.2.0 [INFO] [stderr] Downloaded system-configuration-sys v0.6.0 [INFO] [stderr] Downloaded system-configuration v0.6.1 [INFO] [stderr] Downloaded openssl-probe v0.1.6 [INFO] [stderr] Downloaded pkg-config v0.3.31 [INFO] [stderr] Downloaded base64 v0.22.1 [INFO] [stderr] Downloaded http-body v0.4.6 [INFO] [stderr] Downloaded httpdate v1.0.3 [INFO] [stderr] Downloaded hyper-rustls v0.24.2 [INFO] [stderr] Downloaded ipnet v2.11.0 [INFO] [stderr] Downloaded mime v0.3.17 [INFO] [stderr] Downloaded inout v0.1.3 [INFO] [stderr] Downloaded cipher v0.4.4 [INFO] [stderr] Downloaded derive_arbitrary v1.4.1 [INFO] [stderr] Downloaded arbitrary v1.4.1 [INFO] [stderr] Downloaded bzip2 v0.4.4 [INFO] [stderr] Downloaded constant_time_eq v0.3.1 [INFO] [stderr] Downloaded deflate64 v0.1.9 [INFO] [stderr] Downloaded crc-catalog v2.4.0 [INFO] [stderr] Downloaded crc v3.2.1 [INFO] [stderr] Downloaded lzma-rs v0.3.0 [INFO] [stderr] Downloaded pbkdf2 v0.12.2 [INFO] [stderr] Downloaded lockfree-object-pool v0.1.6 [INFO] [stderr] Downloaded simd-adler32 v0.3.7 [INFO] [stderr] Downloaded zstd-safe v7.2.1 [INFO] [stderr] Downloaded zstd v0.13.2 [INFO] [stderr] Downloaded tokio-rustls v0.26.1 [INFO] [stderr] Downloaded hyper-rustls v0.27.5 [INFO] [stderr] Downloaded http-body v1.0.1 [INFO] [stderr] Downloaded openssl-macros v0.1.1 [INFO] [stderr] Downloaded try-lock v0.2.5 [INFO] [stderr] Downloaded base64 v0.21.7 [INFO] [stderr] Downloaded serenity v0.12.4 [INFO] [stderr] Downloaded windows_i686_gnullvm v0.52.6 [INFO] [stderr] Downloaded rgb v0.8.50 [INFO] [stderr] Downloaded rustix v0.38.44 [INFO] [stderr] Downloaded windows_aarch64_gnullvm v0.52.6 [INFO] [stderr] Downloaded windows_x86_64_gnullvm v0.52.6 [INFO] [stderr] Downloaded wasm-bindgen-futures v0.4.50 [INFO] [stderr] Downloaded winreg v0.50.0 [INFO] [stderr] Downloaded futures-channel v0.3.31 [INFO] [stderr] Downloaded futures-io v0.3.31 [INFO] [stderr] Downloaded futures-macro v0.3.31 [INFO] [stderr] Downloaded futures-task v0.3.31 [INFO] [stderr] Downloaded tokio-rustls v0.25.0 [INFO] [stderr] Downloaded data-encoding v2.8.0 [INFO] [stderr] Downloaded httparse v1.10.0 [INFO] [stderr] Downloaded darling_core v0.20.10 [INFO] [stderr] Downloaded syn v1.0.109 [INFO] [stderr] Downloaded serde_cow v0.1.2 [INFO] [stderr] Downloaded static_assertions v1.1.0 [INFO] [stderr] Downloaded futures-core v0.3.31 [INFO] [stderr] Downloaded futures-sink v0.3.31 [INFO] [stderr] Downloaded slab v0.4.9 [INFO] [stderr] Downloaded crossbeam-utils v0.8.21 [INFO] [stderr] Downloaded dashmap v5.5.3 [INFO] [stderr] Downloaded camino v1.1.9 [INFO] [stderr] Downloaded cargo-platform v0.1.9 [INFO] [stderr] Downloaded semver v1.0.25 [INFO] [stderr] Downloaded cargo_metadata v0.14.2 [INFO] [stderr] Downloaded version_check v0.9.5 [INFO] [stderr] Downloaded wit-bindgen-rt v0.33.0 [INFO] [stderr] Downloaded security-framework-sys v2.14.0 [INFO] [stderr] Downloaded native-tls v0.2.13 [INFO] [stderr] Downloaded tokio-native-tls v0.3.1 [INFO] [stderr] Downloaded sync_wrapper v1.0.2 [INFO] [stderr] Downloaded tower-layer v0.3.3 [INFO] [stderr] Downloaded windows-result v0.2.0 [INFO] [stderr] Downloaded windows-strings v0.1.0 [INFO] [stderr] Downloaded windows-registry v0.2.0 [INFO] [stderr] Downloaded hex v0.4.3 [INFO] [stderr] Downloaded gimli v0.31.1 [INFO] [stderr] Downloaded object v0.36.7 [INFO] [stderr] Downloaded syn v2.0.98 [INFO] [stderr] Downloaded spin v0.9.8 [INFO] [stderr] Downloaded js-sys v0.3.77 [INFO] [stderr] Downloaded log v0.4.25 [INFO] [stderr] Downloaded indexmap v1.9.3 [INFO] [stderr] Downloaded strsim v0.11.1 [INFO] [stderr] Downloaded darling_macro v0.20.10 [INFO] [stderr] Downloaded darling v0.20.10 [INFO] [stderr] Downloaded serde_with_macros v3.12.0 [INFO] [stderr] Downloaded async-trait v0.1.86 [INFO] [stderr] Downloaded command_attr v0.5.3 [INFO] [stderr] Downloaded crc32fast v1.4.2 [INFO] [stderr] Downloaded icu_properties_data v1.5.0 [INFO] [stderr] Downloaded rand_chacha v0.3.1 [INFO] [stderr] Downloaded getrandom v0.2.15 [INFO] [stderr] Downloaded untrusted v0.9.0 [INFO] [stderr] Downloaded cpufeatures v0.2.17 [INFO] [stderr] Downloaded core-foundation-sys v0.8.7 [INFO] [stderr] Downloaded jobserver v0.1.32 [INFO] [stderr] Downloaded shlex v1.3.0 [INFO] [stderr] Downloaded iana-time-zone-haiku v0.1.2 [INFO] [stderr] Downloaded arrayvec v0.7.6 [INFO] [stderr] Downloaded futures-executor v0.3.31 [INFO] [stderr] Downloaded levenshtein v1.0.5 [INFO] [stderr] Downloaded serde_json v1.0.138 [INFO] [stderr] Downloaded time v0.3.37 [INFO] [stderr] Downloaded zerovec v0.10.4 [INFO] [stderr] Downloaded idna v1.0.3 [INFO] [stderr] Downloaded unicase v2.8.1 [INFO] [stderr] Downloaded dotenv v0.15.0 [INFO] [stderr] Downloaded csv-core v0.1.11 [INFO] [stderr] Downloaded sct v0.7.1 [INFO] [stderr] Downloaded futures v0.3.31 [INFO] [stderr] Downloaded equivalent v1.0.1 [INFO] [stderr] Downloaded want v0.3.1 [INFO] [stderr] Downloaded bitflags v2.8.0 [INFO] [stderr] Downloaded icu_collections v1.5.0 [INFO] [stderr] Downloaded icu_properties v1.5.1 [INFO] [stderr] Downloaded serde v1.0.217 [INFO] [stderr] Downloaded url v2.5.4 [INFO] [stderr] Downloaded memchr v2.7.4 [INFO] [stderr] Downloaded backtrace v0.3.74 [INFO] [stderr] Downloaded bytes v1.10.0 [INFO] [stderr] Downloaded mio v1.0.3 [INFO] [stderr] Downloaded mini-moka v0.10.3 [INFO] [stderr] Downloaded icu_normalizer_data v1.5.0 [INFO] [stderr] Downloaded icu_locid_transform_data v1.5.0 [INFO] [stderr] Downloaded icu_locid v1.5.0 [INFO] [stderr] Downloaded serde_derive v1.0.217 [INFO] [stderr] Downloaded miniz_oxide v0.8.3 [INFO] [stderr] Downloaded socket2 v0.5.8 [INFO] [stderr] Downloaded proc-macro2 v1.0.93 [INFO] [stderr] Downloaded unicode-ident v1.0.16 [INFO] [stderr] Downloaded tempfile v3.16.0 [INFO] [stderr] Downloaded walkdir v2.5.0 [INFO] [stderr] Downloaded triomphe v0.1.14 [INFO] [stderr] Downloaded lock_api v0.4.12 [INFO] [stderr] Downloaded redox_syscall v0.5.8 [INFO] [stderr] Downloaded parking_lot_core v0.9.10 [INFO] [stderr] Downloaded parking_lot v0.12.3 [INFO] [stderr] Downloaded secrecy v0.8.0 [INFO] [stderr] Downloaded ryu v1.0.19 [INFO] [stderr] Downloaded icu_normalizer v1.5.0 [INFO] [stderr] Downloaded icu_locid_transform v1.5.0 [INFO] [stderr] Downloaded icu_provider v1.5.0 [INFO] [stderr] Downloaded displaydoc v0.2.5 [INFO] [stderr] Downloaded smallvec v1.13.2 [INFO] [stderr] Downloaded thiserror-impl v2.0.11 [INFO] [stderr] Downloaded addr2line v0.24.2 [INFO] [stderr] Downloaded wasi v0.11.0+wasi-snapshot-preview1 [INFO] [stderr] Downloaded pin-project-lite v0.2.16 [INFO] [stderr] Downloaded quote v1.0.38 [INFO] [stderr] Downloaded system-configuration v0.5.1 [INFO] [stderr] Downloaded skeptic v0.13.7 [INFO] [stderr] Downloaded zeroize_derive v1.4.2 [INFO] [stderr] Downloaded powerfmt v0.2.0 [INFO] [stderr] Downloaded time-macros v0.2.19 [INFO] [stderr] Downloaded litemap v0.7.4 [INFO] [stderr] Downloaded writeable v0.5.5 [INFO] [stderr] Downloaded yoke v0.7.5 [INFO] [stderr] Downloaded synstructure v0.13.1 [INFO] [stderr] Downloaded zerofrom-derive v0.1.5 [INFO] [stderr] Downloaded thiserror v2.0.11 [INFO] [stderr] Downloaded rustc-demangle v0.1.24 [INFO] [stderr] Downloaded serde_urlencoded v0.7.1 [INFO] [stderr] Downloaded bitflags v1.3.2 [INFO] [stderr] Downloaded system-configuration-sys v0.5.0 [INFO] [stderr] Downloaded winapi-util v0.1.9 [INFO] [stderr] Downloaded tagptr v0.2.0 [INFO] [stderr] Downloaded autocfg v1.4.0 [INFO] [stderr] Downloaded scopeguard v1.2.0 [INFO] [stderr] Downloaded zeroize v1.8.1 [INFO] [stderr] Downloaded deranged v0.3.11 [INFO] [stderr] Downloaded itoa v1.0.14 [INFO] [stderr] Downloaded typesize v0.1.11 [INFO] [stderr] Downloaded form_urlencoded v1.2.1 [INFO] [stderr] Downloaded tinystr v0.7.6 [INFO] [stderr] Downloaded idna_adapter v1.2.0 [INFO] [stderr] Downloaded utf16_iter v1.0.5 [INFO] [stderr] Downloaded stable_deref_trait v1.2.0 [INFO] [stderr] Downloaded zerovec-derive v0.10.3 [INFO] [stderr] Downloaded utf8_iter v1.0.4 [INFO] [stderr] Downloaded percent-encoding v2.3.1 [INFO] [stderr] Downloaded uwl v0.6.0 [INFO] [stderr] Downloaded adler2 v2.0.0 [INFO] [stderr] Downloaded tokio-macros v2.5.0 [INFO] [stderr] Downloaded zerofrom v0.1.5 [INFO] [stderr] Downloaded typesize-derive v0.1.11 [INFO] [stderr] Downloaded write16 v1.0.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9b862281e387b37261f93ce0081d3a936953ec379ca763c350b83f18c4303756 [INFO] running `Command { std: "docker" "start" "-a" "9b862281e387b37261f93ce0081d3a936953ec379ca763c350b83f18c4303756", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9b862281e387b37261f93ce0081d3a936953ec379ca763c350b83f18c4303756", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9b862281e387b37261f93ce0081d3a936953ec379ca763c350b83f18c4303756", kill_on_drop: false }` [INFO] [stdout] 9b862281e387b37261f93ce0081d3a936953ec379ca763c350b83f18c4303756 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3cd8c5c609ebcef58bc038d6046a13dcd423d7816a8508501365a8e44e22fd23 [INFO] running `Command { std: "docker" "start" "-a" "3cd8c5c609ebcef58bc038d6046a13dcd423d7816a8508501365a8e44e22fd23", kill_on_drop: false }` [INFO] [stderr] Compiling syn v2.0.98 [INFO] [stderr] Compiling bytes v1.10.0 [INFO] [stderr] Compiling itoa v1.0.14 [INFO] [stderr] Compiling log v0.4.25 [INFO] [stderr] Compiling serde v1.0.217 [INFO] [stderr] Compiling jobserver v0.1.32 [INFO] [stderr] Compiling getrandom v0.2.15 [INFO] [stderr] Compiling socket2 v0.5.8 [INFO] [stderr] Compiling mio v1.0.3 [INFO] [stderr] Compiling cc v1.2.13 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling litemap v0.7.4 [INFO] [stderr] Compiling httparse v1.10.0 [INFO] [stderr] Compiling spin v0.9.8 [INFO] [stderr] Compiling hashbrown v0.15.2 [INFO] [stderr] Compiling tracing-core v0.1.33 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling http v1.2.0 [INFO] [stderr] Compiling rustls-pki-types v1.11.0 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling indexmap v2.7.1 [INFO] [stderr] Compiling ryu v1.0.19 [INFO] [stderr] Compiling http v0.2.12 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling rustls v0.22.4 [INFO] [stderr] Compiling native-tls v0.2.13 [INFO] [stderr] Compiling rustls v0.21.12 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling unicase v2.8.1 [INFO] [stderr] Compiling powerfmt v0.2.0 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling ring v0.17.8 [INFO] [stderr] Compiling openssl-sys v0.9.105 [INFO] [stderr] Compiling zstd-sys v2.0.13+zstd.1.5.6 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling bzip2-sys v0.1.11+1.0.8 [INFO] [stderr] Compiling zstd-safe v7.2.1 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling openssl-probe v0.1.6 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling miniz_oxide v0.8.3 [INFO] [stderr] Compiling openssl v0.10.70 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling http-body v0.4.6 [INFO] [stderr] Compiling inout v0.1.3 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Compiling time-core v0.1.2 [INFO] [stderr] Compiling num-conv v0.1.0 [INFO] [stderr] Compiling crc-catalog v2.4.0 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling crc v3.2.1 [INFO] [stderr] Compiling cipher v0.4.4 [INFO] [stderr] Compiling flate2 v1.0.35 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling lockfree-object-pool v0.1.6 [INFO] [stderr] Compiling serde_json v1.0.138 [INFO] [stderr] Compiling zip v2.2.2 [INFO] [stderr] Compiling utf-8 v0.7.6 [INFO] [stderr] Compiling bumpalo v3.17.0 [INFO] [stderr] Compiling simd-adler32 v0.3.7 [INFO] [stderr] Compiling tower-layer v0.3.3 [INFO] [stderr] Compiling rustls-pemfile v1.0.4 [INFO] [stderr] Compiling pbkdf2 v0.12.2 [INFO] [stderr] Compiling zopfli v0.8.1 [INFO] [stderr] Compiling aes v0.8.4 [INFO] [stderr] Compiling lzma-rs v0.3.0 [INFO] [stderr] Compiling synstructure v0.13.1 [INFO] [stderr] Compiling darling_core v0.20.10 [INFO] [stderr] Compiling bzip2 v0.4.4 [INFO] [stderr] Compiling webpki-roots v0.26.8 [INFO] [stderr] Compiling rustls-pemfile v2.2.0 [INFO] [stderr] Compiling csv-core v0.1.11 [INFO] [stderr] Compiling deflate64 v0.1.9 [INFO] [stderr] Compiling sync_wrapper v0.1.2 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling webpki-roots v0.25.4 [INFO] [stderr] Compiling serenity v0.12.4 [INFO] [stderr] Compiling constant_time_eq v0.3.1 [INFO] [stderr] Compiling bytemuck v1.21.0 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling rgb v0.8.50 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling sha2 v0.10.8 [INFO] [stderr] Compiling fxhash v0.2.1 [INFO] [stderr] Compiling typemap_rev v0.3.0 [INFO] [stderr] Compiling uwl v0.6.0 [INFO] [stderr] Compiling dotenv v0.15.0 [INFO] [stderr] Compiling serde_derive v1.0.217 [INFO] [stderr] Compiling zerofrom-derive v0.1.5 [INFO] [stderr] Compiling yoke-derive v0.7.5 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling zerovec-derive v0.10.3 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling tokio v1.43.0 [INFO] [stderr] Compiling zerofrom v0.1.5 [INFO] [stderr] Compiling icu_provider_macros v1.5.0 [INFO] [stderr] Compiling tracing-attributes v0.1.28 [INFO] [stderr] Compiling yoke v0.7.5 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling zeroize v1.8.1 [INFO] [stderr] Compiling zerovec v0.10.4 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling ppv-lite86 v0.2.20 [INFO] [stderr] Compiling tinystr v0.7.6 [INFO] [stderr] Compiling icu_collections v1.5.0 [INFO] [stderr] Compiling icu_locid v1.5.0 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling icu_provider v1.5.0 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling icu_locid_transform v1.5.0 [INFO] [stderr] Compiling rustls-webpki v0.101.7 [INFO] [stderr] Compiling rustls-webpki v0.102.8 [INFO] [stderr] Compiling sct v0.7.1 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling icu_properties v1.5.1 [INFO] [stderr] Compiling tokio-util v0.7.13 [INFO] [stderr] Compiling h2 v0.4.7 [INFO] [stderr] Compiling deranged v0.3.11 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling h2 v0.3.26 [INFO] [stderr] Compiling time v0.3.37 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling http-body-util v0.1.2 [INFO] [stderr] Compiling darling_macro v0.20.10 [INFO] [stderr] Compiling icu_normalizer v1.5.0 [INFO] [stderr] Compiling tokio-rustls v0.24.1 [INFO] [stderr] Compiling idna_adapter v1.2.0 [INFO] [stderr] Compiling idna v1.0.3 [INFO] [stderr] Compiling thiserror-impl v2.0.11 [INFO] [stderr] Compiling tokio-rustls v0.25.0 [INFO] [stderr] Compiling url v2.5.4 [INFO] [stderr] Compiling darling v0.20.10 [INFO] [stderr] Compiling chrono v0.4.39 [INFO] [stderr] Compiling tungstenite v0.21.0 [INFO] [stderr] Compiling thiserror v2.0.11 [INFO] [stderr] Compiling tower v0.5.2 [INFO] [stderr] Compiling zstd v0.13.2 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling serde_with_macros v3.12.0 [INFO] [stderr] Compiling csv v1.3.1 [INFO] [stderr] Compiling tokio-tungstenite v0.21.0 [INFO] [stderr] Compiling hyper v1.6.0 [INFO] [stderr] Compiling hyper v0.14.32 [INFO] [stderr] Compiling dashmap v5.5.3 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling serde_cow v0.1.2 [INFO] [stderr] Compiling secrecy v0.8.0 [INFO] [stderr] Compiling derivative v2.2.0 [INFO] [stderr] Compiling command_attr v0.5.3 [INFO] [stderr] Compiling hyper-util v0.1.10 [INFO] [stderr] Compiling async-trait v0.1.86 [INFO] [stderr] Compiling serde_with v3.12.0 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling reqwest v0.12.12 [INFO] [stderr] Compiling hyper-rustls v0.24.2 [INFO] [stderr] Compiling reqwest v0.11.27 [INFO] [stderr] Compiling gtfs-structures v0.43.0 [INFO] [stderr] Compiling cta-discord-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Command` [INFO] [stdout] --> src/main.rs:6:21 [INFO] [stdout] | [INFO] [stdout] 6 | use serenity::all::{Command, CreateInteractionResponse, Interaction}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FutureExt` [INFO] [stdout] --> src/main.rs:9:29 [INFO] [stdout] | [INFO] [stdout] 9 | use serenity::{async_trait, FutureExt}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `example` [INFO] [stdout] --> src/cta/mod.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | let example = gtfs.get().unwrap().get_route("1").expect("Invalid Route ID.").long_name.as_ref().expect("No Long Name").to_string(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_example` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/commands/route_name.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | let mut id_option = CreateCommandOption::new(serenity::all::CommandOptionType::String, "route_id", "ID of the route").required(true); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/commands/get_train.rs:31:7 [INFO] [stdout] | [INFO] [stdout] 31 | let mut run_option = CreateCommandOption::new(serenity::all::CommandOptionType::Integer, "train_number", "Run number of the train").req... [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `LRouteName` is more private than the item `TTFollowEta::rt` [INFO] [stdout] --> src/cta/traintracker.rs:200:3 [INFO] [stdout] | [INFO] [stdout] 200 | pub rt: LRouteName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ field `TTFollowEta::rt` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `LRouteName` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/cta/traintracker.rs:119:1 [INFO] [stdout] | [INFO] [stdout] 119 | enum LRouteName { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_stop_name` is never used [INFO] [stdout] --> src/cta/mod.rs:30:14 [INFO] [stdout] | [INFO] [stdout] 30 | pub async fn get_stop_name(id: i32) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `stations_url` is never used [INFO] [stdout] --> src/cta/stations.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | static stations_url: &str = "https://data.cityofchicago.org/resource/8pix-ypme.json"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `stops` is never used [INFO] [stdout] --> src/cta/stations.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | static stops: OnceLock> = OnceLock::new(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/cta/stations.rs:13:3 [INFO] [stdout] | [INFO] [stdout] 11 | struct Stop { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 12 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 13 | stop_id: i32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 16 | direction_id: Direction, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 17 | stop_name: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 18 | station_name: String, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 19 | station_descriptive_name: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | map_id: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 23 | ada: bool, [INFO] [stdout] | ^^^ [INFO] [stdout] 24 | red: bool, [INFO] [stdout] | ^^^ [INFO] [stdout] 25 | blue: bool, [INFO] [stdout] | ^^^^ [INFO] [stdout] 26 | g: bool, [INFO] [stdout] | ^ [INFO] [stdout] 27 | brn: bool, [INFO] [stdout] | ^^^ [INFO] [stdout] 28 | p: bool, [INFO] [stdout] | ^ [INFO] [stdout] 29 | pexp: bool, [INFO] [stdout] | ^^^^ [INFO] [stdout] 30 | y: bool, [INFO] [stdout] | ^ [INFO] [stdout] 31 | pnk: bool, [INFO] [stdout] | ^^^ [INFO] [stdout] 32 | o: bool, [INFO] [stdout] | ^ [INFO] [stdout] 33 | location: Location [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Stop` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `latitude` and `longitude` are never read [INFO] [stdout] --> src/cta/stations.rs:40:3 [INFO] [stdout] | [INFO] [stdout] 38 | struct Location { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 39 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 40 | latitude: f32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 41 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 42 | longitude: f32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Location` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_stations` is never used [INFO] [stdout] --> src/cta/stations.rs:53:14 [INFO] [stdout] | [INFO] [stdout] 53 | pub async fn load_stations() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_stop_name` is never used [INFO] [stdout] --> src/cta/stations.rs:63:14 [INFO] [stdout] | [INFO] [stdout] 63 | pub async fn get_stop_name(id: i32) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tmst`, `errCd`, `errNm`, and `route` are never read [INFO] [stdout] --> src/cta/traintracker.rs:17:3 [INFO] [stdout] | [INFO] [stdout] 15 | struct PositionTT { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 16 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 17 | tmst: chrono::NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] 18 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 19 | errCd: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 20 | errNm: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 21 | route: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PositionTT` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `train` are never read [INFO] [stdout] --> src/cta/traintracker.rs:28:3 [INFO] [stdout] | [INFO] [stdout] 26 | struct TTRoute { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 27 | #[serde(rename="@name")] [INFO] [stdout] 28 | name: LRouteCode, [INFO] [stdout] | ^^^^ [INFO] [stdout] 29 | train: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TTRoute` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/cta/traintracker.rs:37:3 [INFO] [stdout] | [INFO] [stdout] 34 | struct TTPosition { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 37 | rn: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 38 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 39 | destSt: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 40 | destNm: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 41 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 42 | trDr: i8, [INFO] [stdout] | ^^^^ [INFO] [stdout] 43 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 44 | nextStaId: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 45 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 46 | nextStpId: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 47 | nextStaNm: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 48 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 49 | prdt: NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] 50 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 51 | arrT: NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] 52 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 53 | isApp: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 54 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 55 | isDly: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 56 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 57 | lat: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 58 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 59 | lon: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 60 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 61 | heading: i32 [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TTPosition` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tmst`, `errCd`, `errNm`, and `eta` are never read [INFO] [stdout] --> src/cta/traintracker.rs:68:3 [INFO] [stdout] | [INFO] [stdout] 66 | struct ArrivalsTT { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 67 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 68 | tmst: chrono::NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] 69 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 70 | errCd: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 71 | errNm: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 72 | eta: Vec, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ArrivalsTT` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/cta/traintracker.rs:79:3 [INFO] [stdout] | [INFO] [stdout] 77 | struct TTArrival { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 78 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 79 | rn: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 80 | rt: LRouteCode, [INFO] [stdout] | ^^ [INFO] [stdout] 81 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 82 | destSt: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 83 | destNm: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 84 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 85 | trDr: i8, [INFO] [stdout] | ^^^^ [INFO] [stdout] 86 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 87 | prdt: NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] 88 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 89 | arrT: NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] 90 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 91 | isApp: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 92 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 93 | isSch: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 94 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 95 | isDly: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 96 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 97 | isFlt: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 98 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 99 | lat: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 100 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 101 | lon: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 102 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 103 | heading: i32 [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TTArrival` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tmst`, `errCd`, `errNm`, and `position` are never read [INFO] [stdout] --> src/cta/traintracker.rs:171:3 [INFO] [stdout] | [INFO] [stdout] 169 | struct FollowTrainTT { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 170 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 171 | tmst: NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] 172 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 173 | errCd: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 174 | errNm: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 175 | position: Position, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FollowTrainTT` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `lat`, `lon`, and `heading` are never read [INFO] [stdout] --> src/cta/traintracker.rs:183:3 [INFO] [stdout] | [INFO] [stdout] 181 | struct Position { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 182 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 183 | lat: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 184 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 185 | lon: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 186 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 187 | heading: i32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Position` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/cta/traintracker.rs:194:7 [INFO] [stdout] | [INFO] [stdout] 192 | pub struct TTFollowEta { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 193 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 194 | pub staId: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 195 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 196 | pub stpId: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 199 | pub rn: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 200 | pub rt: LRouteName, [INFO] [stdout] | ^^ [INFO] [stdout] 201 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 202 | pub destSt: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 203 | pub destNm: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 204 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 205 | pub trDr: i8, [INFO] [stdout] | ^^^^ [INFO] [stdout] 206 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 207 | pub prdt: NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | pub isApp: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 212 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 213 | pub isSch: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 214 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 215 | pub isDly: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 216 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 217 | pub isFlt: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TTFollowEta` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `ctaTT` should have a snake case name [INFO] [stdout] --> src/main.rs:56:7 [INFO] [stdout] | [INFO] [stdout] 56 | let ctaTT = cta::traintracker::TrainTracker::new(env::var("CTA_RAIL_API_KEY").expect("CTA_RAIL_API_KEY not found.").as_str()); [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `cta_tt` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:57:3 [INFO] [stdout] | [INFO] [stdout] 57 | ctaTT.train_next_stations(618).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 57 | let _ = ctaTT.train_next_stations(618).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `gtfs_url` should have an upper case name [INFO] [stdout] --> src/cta/mod.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | static gtfs_url: &str = "https://www.transitchicago.com/downloads/sch_data/google_transit.zip"; [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `GTFS_URL` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `gtfs` should have an upper case name [INFO] [stdout] --> src/cta/mod.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | static gtfs: OnceLock = OnceLock::new(); [INFO] [stdout] | ^^^^ help: convert the identifier to upper case: `GTFS` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cta/mod.rs:13:3 [INFO] [stdout] | [INFO] [stdout] 13 | gtfs.set(gtfs_structures::GtfsReader::read_from_url_async(reader, gtfs_url).await.expect("Error loading GTFS data")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 13 | let _ = gtfs.set(gtfs_structures::GtfsReader::read_from_url_async(reader, gtfs_url).await.expect("Error loading GTFS data")); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `stations_url` should have an upper case name [INFO] [stdout] --> src/cta/stations.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | static stations_url: &str = "https://data.cityofchicago.org/resource/8pix-ypme.json"; [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper case: `STATIONS_URL` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `stops` should have an upper case name [INFO] [stdout] --> src/cta/stations.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | static stops: OnceLock> = OnceLock::new(); [INFO] [stdout] | ^^^^^ help: convert the identifier to upper case: `STOPS` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cta/stations.rs:60:3 [INFO] [stdout] | [INFO] [stdout] 60 | stops.set(serde_json::from_str(&resp_text).expect("Could not parse station data.")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 60 | let _ = stops.set(serde_json::from_str(&resp_text).expect("Could not parse station data.")); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `errCd` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:19:3 [INFO] [stdout] | [INFO] [stdout] 19 | errCd: i32, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `err_cd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `errNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:20:3 [INFO] [stdout] | [INFO] [stdout] 20 | errNm: Option, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `err_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `destSt` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:39:3 [INFO] [stdout] | [INFO] [stdout] 39 | destSt: i32, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `dest_st` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `destNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:40:3 [INFO] [stdout] | [INFO] [stdout] 40 | destNm: String, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `dest_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `trDr` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:42:3 [INFO] [stdout] | [INFO] [stdout] 42 | trDr: i8, [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `tr_dr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nextStaId` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:44:3 [INFO] [stdout] | [INFO] [stdout] 44 | nextStaId: i32, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `next_sta_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nextStpId` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:46:3 [INFO] [stdout] | [INFO] [stdout] 46 | nextStpId: i32, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `next_stp_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nextStaNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:47:3 [INFO] [stdout] | [INFO] [stdout] 47 | nextStaNm: String, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `next_sta_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `arrT` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:51:3 [INFO] [stdout] | [INFO] [stdout] 51 | arrT: NaiveDateTime, [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `arr_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isApp` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:53:3 [INFO] [stdout] | [INFO] [stdout] 53 | isApp: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_app` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isDly` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:55:3 [INFO] [stdout] | [INFO] [stdout] 55 | isDly: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_dly` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `errCd` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:70:3 [INFO] [stdout] | [INFO] [stdout] 70 | errCd: i32, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `err_cd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `errNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:71:3 [INFO] [stdout] | [INFO] [stdout] 71 | errNm: Option, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `err_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `destSt` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:82:3 [INFO] [stdout] | [INFO] [stdout] 82 | destSt: i32, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `dest_st` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `destNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:83:3 [INFO] [stdout] | [INFO] [stdout] 83 | destNm: String, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `dest_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `trDr` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:85:3 [INFO] [stdout] | [INFO] [stdout] 85 | trDr: i8, [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `tr_dr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `arrT` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:89:3 [INFO] [stdout] | [INFO] [stdout] 89 | arrT: NaiveDateTime, [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `arr_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isApp` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:91:3 [INFO] [stdout] | [INFO] [stdout] 91 | isApp: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_app` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isSch` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:93:3 [INFO] [stdout] | [INFO] [stdout] 93 | isSch: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_sch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isDly` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:95:3 [INFO] [stdout] | [INFO] [stdout] 95 | isDly: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_dly` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isFlt` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:97:3 [INFO] [stdout] | [INFO] [stdout] 97 | isFlt: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_flt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `errCd` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:173:3 [INFO] [stdout] | [INFO] [stdout] 173 | errCd: i32, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `err_cd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `errNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:174:3 [INFO] [stdout] | [INFO] [stdout] 174 | errNm: Option, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `err_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `staId` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:194:7 [INFO] [stdout] | [INFO] [stdout] 194 | pub staId: i32, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `sta_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `stpId` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:196:7 [INFO] [stdout] | [INFO] [stdout] 196 | pub stpId: i32, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `stp_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `staNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:197:7 [INFO] [stdout] | [INFO] [stdout] 197 | pub staNm: String, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `sta_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `destSt` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:202:7 [INFO] [stdout] | [INFO] [stdout] 202 | pub destSt: i32, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `dest_st` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `destNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:203:7 [INFO] [stdout] | [INFO] [stdout] 203 | pub destNm: String, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `dest_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `trDr` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:205:7 [INFO] [stdout] | [INFO] [stdout] 205 | pub trDr: i8, [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `tr_dr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `arrT` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:209:7 [INFO] [stdout] | [INFO] [stdout] 209 | pub arrT: NaiveDateTime, [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `arr_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isApp` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:211:7 [INFO] [stdout] | [INFO] [stdout] 211 | pub isApp: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_app` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isSch` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:213:7 [INFO] [stdout] | [INFO] [stdout] 213 | pub isSch: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_sch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isDly` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:215:7 [INFO] [stdout] | [INFO] [stdout] 215 | pub isDly: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_dly` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isFlt` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:217:7 [INFO] [stdout] | [INFO] [stdout] 217 | pub isFlt: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_flt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `base_url` should have an upper case name [INFO] [stdout] --> src/cta/traintracker.rs:232:9 [INFO] [stdout] | [INFO] [stdout] 232 | const base_url: &str = "https://lapi.transitchicago.com/api/1.0/"; [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `BASE_URL` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 47s [INFO] running `Command { std: "docker" "inspect" "3cd8c5c609ebcef58bc038d6046a13dcd423d7816a8508501365a8e44e22fd23", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3cd8c5c609ebcef58bc038d6046a13dcd423d7816a8508501365a8e44e22fd23", kill_on_drop: false }` [INFO] [stdout] 3cd8c5c609ebcef58bc038d6046a13dcd423d7816a8508501365a8e44e22fd23 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fbaf6534f51d6aaa9894c898a0c6ebb6271dac349d8d06781ad9ceb946049ff9 [INFO] running `Command { std: "docker" "start" "-a" "fbaf6534f51d6aaa9894c898a0c6ebb6271dac349d8d06781ad9ceb946049ff9", kill_on_drop: false }` [INFO] [stderr] Compiling cta-discord-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Command` [INFO] [stdout] --> src/main.rs:6:21 [INFO] [stdout] | [INFO] [stdout] 6 | use serenity::all::{Command, CreateInteractionResponse, Interaction}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FutureExt` [INFO] [stdout] --> src/main.rs:9:29 [INFO] [stdout] | [INFO] [stdout] 9 | use serenity::{async_trait, FutureExt}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `example` [INFO] [stdout] --> src/cta/mod.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | let example = gtfs.get().unwrap().get_route("1").expect("Invalid Route ID.").long_name.as_ref().expect("No Long Name").to_string(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_example` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/commands/route_name.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | let mut id_option = CreateCommandOption::new(serenity::all::CommandOptionType::String, "route_id", "ID of the route").required(true); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/commands/get_train.rs:31:7 [INFO] [stdout] | [INFO] [stdout] 31 | let mut run_option = CreateCommandOption::new(serenity::all::CommandOptionType::Integer, "train_number", "Run number of the train").req... [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `LRouteName` is more private than the item `TTFollowEta::rt` [INFO] [stdout] --> src/cta/traintracker.rs:200:3 [INFO] [stdout] | [INFO] [stdout] 200 | pub rt: LRouteName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ field `TTFollowEta::rt` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `LRouteName` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/cta/traintracker.rs:119:1 [INFO] [stdout] | [INFO] [stdout] 119 | enum LRouteName { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_stop_name` is never used [INFO] [stdout] --> src/cta/mod.rs:30:14 [INFO] [stdout] | [INFO] [stdout] 30 | pub async fn get_stop_name(id: i32) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `stations_url` is never used [INFO] [stdout] --> src/cta/stations.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | static stations_url: &str = "https://data.cityofchicago.org/resource/8pix-ypme.json"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `stops` is never used [INFO] [stdout] --> src/cta/stations.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | static stops: OnceLock> = OnceLock::new(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/cta/stations.rs:13:3 [INFO] [stdout] | [INFO] [stdout] 11 | struct Stop { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 12 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 13 | stop_id: i32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 16 | direction_id: Direction, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 17 | stop_name: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 18 | station_name: String, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 19 | station_descriptive_name: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | map_id: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 23 | ada: bool, [INFO] [stdout] | ^^^ [INFO] [stdout] 24 | red: bool, [INFO] [stdout] | ^^^ [INFO] [stdout] 25 | blue: bool, [INFO] [stdout] | ^^^^ [INFO] [stdout] 26 | g: bool, [INFO] [stdout] | ^ [INFO] [stdout] 27 | brn: bool, [INFO] [stdout] | ^^^ [INFO] [stdout] 28 | p: bool, [INFO] [stdout] | ^ [INFO] [stdout] 29 | pexp: bool, [INFO] [stdout] | ^^^^ [INFO] [stdout] 30 | y: bool, [INFO] [stdout] | ^ [INFO] [stdout] 31 | pnk: bool, [INFO] [stdout] | ^^^ [INFO] [stdout] 32 | o: bool, [INFO] [stdout] | ^ [INFO] [stdout] 33 | location: Location [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Stop` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `latitude` and `longitude` are never read [INFO] [stdout] --> src/cta/stations.rs:40:3 [INFO] [stdout] | [INFO] [stdout] 38 | struct Location { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 39 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 40 | latitude: f32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 41 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 42 | longitude: f32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Location` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_stations` is never used [INFO] [stdout] --> src/cta/stations.rs:53:14 [INFO] [stdout] | [INFO] [stdout] 53 | pub async fn load_stations() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_stop_name` is never used [INFO] [stdout] --> src/cta/stations.rs:63:14 [INFO] [stdout] | [INFO] [stdout] 63 | pub async fn get_stop_name(id: i32) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tmst`, `errCd`, `errNm`, and `route` are never read [INFO] [stdout] --> src/cta/traintracker.rs:17:3 [INFO] [stdout] | [INFO] [stdout] 15 | struct PositionTT { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 16 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 17 | tmst: chrono::NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] 18 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 19 | errCd: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 20 | errNm: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 21 | route: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PositionTT` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `train` are never read [INFO] [stdout] --> src/cta/traintracker.rs:28:3 [INFO] [stdout] | [INFO] [stdout] 26 | struct TTRoute { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 27 | #[serde(rename="@name")] [INFO] [stdout] 28 | name: LRouteCode, [INFO] [stdout] | ^^^^ [INFO] [stdout] 29 | train: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TTRoute` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/cta/traintracker.rs:37:3 [INFO] [stdout] | [INFO] [stdout] 34 | struct TTPosition { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 37 | rn: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 38 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 39 | destSt: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 40 | destNm: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 41 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 42 | trDr: i8, [INFO] [stdout] | ^^^^ [INFO] [stdout] 43 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 44 | nextStaId: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 45 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 46 | nextStpId: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 47 | nextStaNm: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 48 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 49 | prdt: NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] 50 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 51 | arrT: NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] 52 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 53 | isApp: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 54 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 55 | isDly: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 56 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 57 | lat: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 58 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 59 | lon: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 60 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 61 | heading: i32 [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TTPosition` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tmst`, `errCd`, `errNm`, and `eta` are never read [INFO] [stdout] --> src/cta/traintracker.rs:68:3 [INFO] [stdout] | [INFO] [stdout] 66 | struct ArrivalsTT { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 67 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 68 | tmst: chrono::NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] 69 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 70 | errCd: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 71 | errNm: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 72 | eta: Vec, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ArrivalsTT` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/cta/traintracker.rs:79:3 [INFO] [stdout] | [INFO] [stdout] 77 | struct TTArrival { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 78 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 79 | rn: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 80 | rt: LRouteCode, [INFO] [stdout] | ^^ [INFO] [stdout] 81 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 82 | destSt: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 83 | destNm: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 84 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 85 | trDr: i8, [INFO] [stdout] | ^^^^ [INFO] [stdout] 86 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 87 | prdt: NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] 88 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 89 | arrT: NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] 90 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 91 | isApp: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 92 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 93 | isSch: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 94 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 95 | isDly: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 96 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 97 | isFlt: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 98 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 99 | lat: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 100 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 101 | lon: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 102 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 103 | heading: i32 [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TTArrival` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tmst`, `errCd`, `errNm`, and `position` are never read [INFO] [stdout] --> src/cta/traintracker.rs:171:3 [INFO] [stdout] | [INFO] [stdout] 169 | struct FollowTrainTT { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 170 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 171 | tmst: NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] 172 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 173 | errCd: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 174 | errNm: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 175 | position: Position, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FollowTrainTT` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `lat`, `lon`, and `heading` are never read [INFO] [stdout] --> src/cta/traintracker.rs:183:3 [INFO] [stdout] | [INFO] [stdout] 181 | struct Position { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 182 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 183 | lat: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 184 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 185 | lon: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 186 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 187 | heading: i32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Position` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/cta/traintracker.rs:194:7 [INFO] [stdout] | [INFO] [stdout] 192 | pub struct TTFollowEta { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 193 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 194 | pub staId: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 195 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 196 | pub stpId: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 199 | pub rn: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 200 | pub rt: LRouteName, [INFO] [stdout] | ^^ [INFO] [stdout] 201 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 202 | pub destSt: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 203 | pub destNm: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 204 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 205 | pub trDr: i8, [INFO] [stdout] | ^^^^ [INFO] [stdout] 206 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 207 | pub prdt: NaiveDateTime, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | pub isApp: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 212 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 213 | pub isSch: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 214 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 215 | pub isDly: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 216 | #[serde_as(as = "DisplayFromStr")] [INFO] [stdout] 217 | pub isFlt: i8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TTFollowEta` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `ctaTT` should have a snake case name [INFO] [stdout] --> src/main.rs:56:7 [INFO] [stdout] | [INFO] [stdout] 56 | let ctaTT = cta::traintracker::TrainTracker::new(env::var("CTA_RAIL_API_KEY").expect("CTA_RAIL_API_KEY not found.").as_str()); [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `cta_tt` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:57:3 [INFO] [stdout] | [INFO] [stdout] 57 | ctaTT.train_next_stations(618).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 57 | let _ = ctaTT.train_next_stations(618).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `gtfs_url` should have an upper case name [INFO] [stdout] --> src/cta/mod.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | static gtfs_url: &str = "https://www.transitchicago.com/downloads/sch_data/google_transit.zip"; [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `GTFS_URL` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `gtfs` should have an upper case name [INFO] [stdout] --> src/cta/mod.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | static gtfs: OnceLock = OnceLock::new(); [INFO] [stdout] | ^^^^ help: convert the identifier to upper case: `GTFS` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cta/mod.rs:13:3 [INFO] [stdout] | [INFO] [stdout] 13 | gtfs.set(gtfs_structures::GtfsReader::read_from_url_async(reader, gtfs_url).await.expect("Error loading GTFS data")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 13 | let _ = gtfs.set(gtfs_structures::GtfsReader::read_from_url_async(reader, gtfs_url).await.expect("Error loading GTFS data")); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `stations_url` should have an upper case name [INFO] [stdout] --> src/cta/stations.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | static stations_url: &str = "https://data.cityofchicago.org/resource/8pix-ypme.json"; [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper case: `STATIONS_URL` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `stops` should have an upper case name [INFO] [stdout] --> src/cta/stations.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | static stops: OnceLock> = OnceLock::new(); [INFO] [stdout] | ^^^^^ help: convert the identifier to upper case: `STOPS` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cta/stations.rs:60:3 [INFO] [stdout] | [INFO] [stdout] 60 | stops.set(serde_json::from_str(&resp_text).expect("Could not parse station data.")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 60 | let _ = stops.set(serde_json::from_str(&resp_text).expect("Could not parse station data.")); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `errCd` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:19:3 [INFO] [stdout] | [INFO] [stdout] 19 | errCd: i32, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `err_cd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `errNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:20:3 [INFO] [stdout] | [INFO] [stdout] 20 | errNm: Option, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `err_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `destSt` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:39:3 [INFO] [stdout] | [INFO] [stdout] 39 | destSt: i32, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `dest_st` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `destNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:40:3 [INFO] [stdout] | [INFO] [stdout] 40 | destNm: String, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `dest_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `trDr` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:42:3 [INFO] [stdout] | [INFO] [stdout] 42 | trDr: i8, [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `tr_dr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nextStaId` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:44:3 [INFO] [stdout] | [INFO] [stdout] 44 | nextStaId: i32, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `next_sta_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nextStpId` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:46:3 [INFO] [stdout] | [INFO] [stdout] 46 | nextStpId: i32, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `next_stp_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nextStaNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:47:3 [INFO] [stdout] | [INFO] [stdout] 47 | nextStaNm: String, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `next_sta_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `arrT` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:51:3 [INFO] [stdout] | [INFO] [stdout] 51 | arrT: NaiveDateTime, [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `arr_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isApp` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:53:3 [INFO] [stdout] | [INFO] [stdout] 53 | isApp: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_app` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isDly` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:55:3 [INFO] [stdout] | [INFO] [stdout] 55 | isDly: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_dly` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `errCd` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:70:3 [INFO] [stdout] | [INFO] [stdout] 70 | errCd: i32, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `err_cd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `errNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:71:3 [INFO] [stdout] | [INFO] [stdout] 71 | errNm: Option, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `err_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `destSt` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:82:3 [INFO] [stdout] | [INFO] [stdout] 82 | destSt: i32, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `dest_st` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `destNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:83:3 [INFO] [stdout] | [INFO] [stdout] 83 | destNm: String, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `dest_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `trDr` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:85:3 [INFO] [stdout] | [INFO] [stdout] 85 | trDr: i8, [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `tr_dr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `arrT` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:89:3 [INFO] [stdout] | [INFO] [stdout] 89 | arrT: NaiveDateTime, [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `arr_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isApp` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:91:3 [INFO] [stdout] | [INFO] [stdout] 91 | isApp: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_app` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isSch` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:93:3 [INFO] [stdout] | [INFO] [stdout] 93 | isSch: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_sch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isDly` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:95:3 [INFO] [stdout] | [INFO] [stdout] 95 | isDly: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_dly` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isFlt` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:97:3 [INFO] [stdout] | [INFO] [stdout] 97 | isFlt: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_flt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `errCd` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:173:3 [INFO] [stdout] | [INFO] [stdout] 173 | errCd: i32, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `err_cd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `errNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:174:3 [INFO] [stdout] | [INFO] [stdout] 174 | errNm: Option, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `err_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `staId` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:194:7 [INFO] [stdout] | [INFO] [stdout] 194 | pub staId: i32, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `sta_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `stpId` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:196:7 [INFO] [stdout] | [INFO] [stdout] 196 | pub stpId: i32, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `stp_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `staNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:197:7 [INFO] [stdout] | [INFO] [stdout] 197 | pub staNm: String, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `sta_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `destSt` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:202:7 [INFO] [stdout] | [INFO] [stdout] 202 | pub destSt: i32, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `dest_st` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `destNm` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:203:7 [INFO] [stdout] | [INFO] [stdout] 203 | pub destNm: String, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `dest_nm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `trDr` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:205:7 [INFO] [stdout] | [INFO] [stdout] 205 | pub trDr: i8, [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `tr_dr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `arrT` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:209:7 [INFO] [stdout] | [INFO] [stdout] 209 | pub arrT: NaiveDateTime, [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `arr_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isApp` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:211:7 [INFO] [stdout] | [INFO] [stdout] 211 | pub isApp: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_app` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isSch` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:213:7 [INFO] [stdout] | [INFO] [stdout] 213 | pub isSch: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_sch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isDly` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:215:7 [INFO] [stdout] | [INFO] [stdout] 215 | pub isDly: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_dly` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isFlt` should have a snake case name [INFO] [stdout] --> src/cta/traintracker.rs:217:7 [INFO] [stdout] | [INFO] [stdout] 217 | pub isFlt: i8, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `is_flt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `base_url` should have an upper case name [INFO] [stdout] --> src/cta/traintracker.rs:232:9 [INFO] [stdout] | [INFO] [stdout] 232 | const base_url: &str = "https://lapi.transitchicago.com/api/1.0/"; [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `BASE_URL` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 3.54s [INFO] running `Command { std: "docker" "inspect" "fbaf6534f51d6aaa9894c898a0c6ebb6271dac349d8d06781ad9ceb946049ff9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fbaf6534f51d6aaa9894c898a0c6ebb6271dac349d8d06781ad9ceb946049ff9", kill_on_drop: false }` [INFO] [stdout] fbaf6534f51d6aaa9894c898a0c6ebb6271dac349d8d06781ad9ceb946049ff9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] c5201c6a7430069a19300507094dc9ea780a7fc1d9a7c4bd24a4ccd7c834ddc6 [INFO] running `Command { std: "docker" "start" "-a" "c5201c6a7430069a19300507094dc9ea780a7fc1d9a7c4bd24a4ccd7c834ddc6", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `Command` [INFO] [stderr] --> src/main.rs:6:21 [INFO] [stderr] | [INFO] [stderr] 6 | use serenity::all::{Command, CreateInteractionResponse, Interaction}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `FutureExt` [INFO] [stderr] --> src/main.rs:9:29 [INFO] [stderr] | [INFO] [stderr] 9 | use serenity::{async_trait, FutureExt}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `example` [INFO] [stderr] --> src/cta/mod.rs:14:7 [INFO] [stderr] | [INFO] [stderr] 14 | let example = gtfs.get().unwrap().get_route("1").expect("Invalid Route ID.").long_name.as_ref().expect("No Long Name").to_string(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_example` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/commands/route_name.rs:20:7 [INFO] [stderr] | [INFO] [stderr] 20 | let mut id_option = CreateCommandOption::new(serenity::all::CommandOptionType::String, "route_id", "ID of the route").required(true); [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/commands/get_train.rs:31:7 [INFO] [stderr] | [INFO] [stderr] 31 | let mut run_option = CreateCommandOption::new(serenity::all::CommandOptionType::Integer, "train_number", "Run number of the train").req... [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: type `LRouteName` is more private than the item `TTFollowEta::rt` [INFO] [stderr] --> src/cta/traintracker.rs:200:3 [INFO] [stderr] | [INFO] [stderr] 200 | pub rt: LRouteName, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ field `TTFollowEta::rt` is reachable at visibility `pub(crate)` [INFO] [stderr] | [INFO] [stderr] note: but type `LRouteName` is only usable at visibility `pub(self)` [INFO] [stderr] --> src/cta/traintracker.rs:119:1 [INFO] [stderr] | [INFO] [stderr] 119 | enum LRouteName { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] = note: `#[warn(private_interfaces)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `get_stop_name` is never used [INFO] [stderr] --> src/cta/mod.rs:30:14 [INFO] [stderr] | [INFO] [stderr] 30 | pub async fn get_stop_name(id: i32) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: static `stations_url` is never used [INFO] [stderr] --> src/cta/stations.rs:6:8 [INFO] [stderr] | [INFO] [stderr] 6 | static stations_url: &str = "https://data.cityofchicago.org/resource/8pix-ypme.json"; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static `stops` is never used [INFO] [stderr] --> src/cta/stations.rs:7:8 [INFO] [stderr] | [INFO] [stderr] 7 | static stops: OnceLock> = OnceLock::new(); [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/cta/stations.rs:13:3 [INFO] [stderr] | [INFO] [stderr] 11 | struct Stop { [INFO] [stderr] | ---- fields in this struct [INFO] [stderr] 12 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 13 | stop_id: i32, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 16 | direction_id: Direction, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 17 | stop_name: String, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 18 | station_name: String, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 19 | station_descriptive_name: String, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 22 | map_id: i32, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 23 | ada: bool, [INFO] [stderr] | ^^^ [INFO] [stderr] 24 | red: bool, [INFO] [stderr] | ^^^ [INFO] [stderr] 25 | blue: bool, [INFO] [stderr] | ^^^^ [INFO] [stderr] 26 | g: bool, [INFO] [stderr] | ^ [INFO] [stderr] 27 | brn: bool, [INFO] [stderr] | ^^^ [INFO] [stderr] 28 | p: bool, [INFO] [stderr] | ^ [INFO] [stderr] 29 | pexp: bool, [INFO] [stderr] | ^^^^ [INFO] [stderr] 30 | y: bool, [INFO] [stderr] | ^ [INFO] [stderr] 31 | pnk: bool, [INFO] [stderr] | ^^^ [INFO] [stderr] 32 | o: bool, [INFO] [stderr] | ^ [INFO] [stderr] 33 | location: Location [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Stop` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `latitude` and `longitude` are never read [INFO] [stderr] --> src/cta/stations.rs:40:3 [INFO] [stderr] | [INFO] [stderr] 38 | struct Location { [INFO] [stderr] | -------- fields in this struct [INFO] [stderr] 39 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 40 | latitude: f32, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 41 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 42 | longitude: f32, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Location` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `load_stations` is never used [INFO] [stderr] --> src/cta/stations.rs:53:14 [INFO] [stderr] | [INFO] [stderr] 53 | pub async fn load_stations() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_stop_name` is never used [INFO] [stderr] --> src/cta/stations.rs:63:14 [INFO] [stderr] | [INFO] [stderr] 63 | pub async fn get_stop_name(id: i32) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `tmst`, `errCd`, `errNm`, and `route` are never read [INFO] [stderr] --> src/cta/traintracker.rs:17:3 [INFO] [stderr] | [INFO] [stderr] 15 | struct PositionTT { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] 16 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 17 | tmst: chrono::NaiveDateTime, [INFO] [stderr] | ^^^^ [INFO] [stderr] 18 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 19 | errCd: i32, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 20 | errNm: Option, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 21 | route: Vec, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PositionTT` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `name` and `train` are never read [INFO] [stderr] --> src/cta/traintracker.rs:28:3 [INFO] [stderr] | [INFO] [stderr] 26 | struct TTRoute { [INFO] [stderr] | ------- fields in this struct [INFO] [stderr] 27 | #[serde(rename="@name")] [INFO] [stderr] 28 | name: LRouteCode, [INFO] [stderr] | ^^^^ [INFO] [stderr] 29 | train: Vec, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TTRoute` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/cta/traintracker.rs:37:3 [INFO] [stderr] | [INFO] [stderr] 34 | struct TTPosition { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 37 | rn: i32, [INFO] [stderr] | ^^ [INFO] [stderr] 38 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 39 | destSt: i32, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 40 | destNm: String, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 41 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 42 | trDr: i8, [INFO] [stderr] | ^^^^ [INFO] [stderr] 43 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 44 | nextStaId: i32, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 45 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 46 | nextStpId: i32, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 47 | nextStaNm: String, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 48 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 49 | prdt: NaiveDateTime, [INFO] [stderr] | ^^^^ [INFO] [stderr] 50 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 51 | arrT: NaiveDateTime, [INFO] [stderr] | ^^^^ [INFO] [stderr] 52 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 53 | isApp: i8, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 54 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 55 | isDly: i8, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 56 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 57 | lat: f32, [INFO] [stderr] | ^^^ [INFO] [stderr] 58 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 59 | lon: f32, [INFO] [stderr] | ^^^ [INFO] [stderr] 60 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 61 | heading: i32 [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TTPosition` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `tmst`, `errCd`, `errNm`, and `eta` are never read [INFO] [stderr] --> src/cta/traintracker.rs:68:3 [INFO] [stderr] | [INFO] [stderr] 66 | struct ArrivalsTT { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] 67 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 68 | tmst: chrono::NaiveDateTime, [INFO] [stderr] | ^^^^ [INFO] [stderr] 69 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 70 | errCd: i32, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 71 | errNm: Option, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 72 | eta: Vec, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ArrivalsTT` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/cta/traintracker.rs:79:3 [INFO] [stderr] | [INFO] [stderr] 77 | struct TTArrival { [INFO] [stderr] | --------- fields in this struct [INFO] [stderr] 78 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 79 | rn: i32, [INFO] [stderr] | ^^ [INFO] [stderr] 80 | rt: LRouteCode, [INFO] [stderr] | ^^ [INFO] [stderr] 81 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 82 | destSt: i32, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 83 | destNm: String, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 84 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 85 | trDr: i8, [INFO] [stderr] | ^^^^ [INFO] [stderr] 86 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 87 | prdt: NaiveDateTime, [INFO] [stderr] | ^^^^ [INFO] [stderr] 88 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 89 | arrT: NaiveDateTime, [INFO] [stderr] | ^^^^ [INFO] [stderr] 90 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 91 | isApp: i8, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 92 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 93 | isSch: i8, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 94 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 95 | isDly: i8, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 96 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 97 | isFlt: i8, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 98 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 99 | lat: f32, [INFO] [stderr] | ^^^ [INFO] [stderr] 100 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 101 | lon: f32, [INFO] [stderr] | ^^^ [INFO] [stderr] 102 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 103 | heading: i32 [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TTArrival` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `tmst`, `errCd`, `errNm`, and `position` are never read [INFO] [stderr] --> src/cta/traintracker.rs:171:3 [INFO] [stderr] | [INFO] [stderr] 169 | struct FollowTrainTT { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] 170 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 171 | tmst: NaiveDateTime, [INFO] [stderr] | ^^^^ [INFO] [stderr] 172 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 173 | errCd: i32, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 174 | errNm: Option, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 175 | position: Position, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `FollowTrainTT` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `lat`, `lon`, and `heading` are never read [INFO] [stderr] --> src/cta/traintracker.rs:183:3 [INFO] [stderr] | [INFO] [stderr] 181 | struct Position { [INFO] [stderr] | -------- fields in this struct [INFO] [stderr] 182 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 183 | lat: f32, [INFO] [stderr] | ^^^ [INFO] [stderr] 184 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 185 | lon: f32, [INFO] [stderr] | ^^^ [INFO] [stderr] 186 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 187 | heading: i32, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Position` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/cta/traintracker.rs:194:7 [INFO] [stderr] | [INFO] [stderr] 192 | pub struct TTFollowEta { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] 193 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 194 | pub staId: i32, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 195 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 196 | pub stpId: i32, [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 199 | pub rn: i32, [INFO] [stderr] | ^^ [INFO] [stderr] 200 | pub rt: LRouteName, [INFO] [stderr] | ^^ [INFO] [stderr] 201 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 202 | pub destSt: i32, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 203 | pub destNm: String, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 204 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 205 | pub trDr: i8, [INFO] [stderr] | ^^^^ [INFO] [stderr] 206 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 207 | pub prdt: NaiveDateTime, [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 211 | pub isApp: i8, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 212 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 213 | pub isSch: i8, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 214 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 215 | pub isDly: i8, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 216 | #[serde_as(as = "DisplayFromStr")] [INFO] [stderr] 217 | pub isFlt: i8, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TTFollowEta` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variable `ctaTT` should have a snake case name [INFO] [stderr] --> src/main.rs:56:7 [INFO] [stderr] | [INFO] [stderr] 56 | let ctaTT = cta::traintracker::TrainTracker::new(env::var("CTA_RAIL_API_KEY").expect("CTA_RAIL_API_KEY not found.").as_str()); [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `cta_tt` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:57:3 [INFO] [stderr] | [INFO] [stderr] 57 | ctaTT.train_next_stations(618).await; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 57 | let _ = ctaTT.train_next_stations(618).await; [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: static variable `gtfs_url` should have an upper case name [INFO] [stderr] --> src/cta/mod.rs:6:8 [INFO] [stderr] | [INFO] [stderr] 6 | static gtfs_url: &str = "https://www.transitchicago.com/downloads/sch_data/google_transit.zip"; [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to upper case: `GTFS_URL` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stderr] [INFO] [stderr] warning: static variable `gtfs` should have an upper case name [INFO] [stderr] --> src/cta/mod.rs:7:8 [INFO] [stderr] | [INFO] [stderr] 7 | static gtfs: OnceLock = OnceLock::new(); [INFO] [stderr] | ^^^^ help: convert the identifier to upper case: `GTFS` [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/cta/mod.rs:13:3 [INFO] [stderr] | [INFO] [stderr] 13 | gtfs.set(gtfs_structures::GtfsReader::read_from_url_async(reader, gtfs_url).await.expect("Error loading GTFS data")); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 13 | let _ = gtfs.set(gtfs_structures::GtfsReader::read_from_url_async(reader, gtfs_url).await.expect("Error loading GTFS data")); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: static variable `stations_url` should have an upper case name [INFO] [stderr] --> src/cta/stations.rs:6:8 [INFO] [stderr] | [INFO] [stderr] 6 | static stations_url: &str = "https://data.cityofchicago.org/resource/8pix-ypme.json"; [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to upper case: `STATIONS_URL` [INFO] [stderr] [INFO] [stderr] warning: static variable `stops` should have an upper case name [INFO] [stderr] --> src/cta/stations.rs:7:8 [INFO] [stderr] | [INFO] [stderr] 7 | static stops: OnceLock> = OnceLock::new(); [INFO] [stderr] | ^^^^^ help: convert the identifier to upper case: `STOPS` [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/cta/stations.rs:60:3 [INFO] [stderr] | [INFO] [stderr] 60 | stops.set(serde_json::from_str(&resp_text).expect("Could not parse station data.")); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 60 | let _ = stops.set(serde_json::from_str(&resp_text).expect("Could not parse station data.")); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: structure field `errCd` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:19:3 [INFO] [stderr] | [INFO] [stderr] 19 | errCd: i32, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `err_cd` [INFO] [stderr] [INFO] [stderr] warning: structure field `errNm` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:20:3 [INFO] [stderr] | [INFO] [stderr] 20 | errNm: Option, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `err_nm` [INFO] [stderr] [INFO] [stderr] warning: structure field `destSt` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:39:3 [INFO] [stderr] | [INFO] [stderr] 39 | destSt: i32, [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `dest_st` [INFO] [stderr] [INFO] [stderr] warning: structure field `destNm` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:40:3 [INFO] [stderr] | [INFO] [stderr] 40 | destNm: String, [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `dest_nm` [INFO] [stderr] [INFO] [stderr] warning: structure field `trDr` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:42:3 [INFO] [stderr] | [INFO] [stderr] 42 | trDr: i8, [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `tr_dr` [INFO] [stderr] [INFO] [stderr] warning: structure field `nextStaId` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:44:3 [INFO] [stderr] | [INFO] [stderr] 44 | nextStaId: i32, [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `next_sta_id` [INFO] [stderr] [INFO] [stderr] warning: structure field `nextStpId` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:46:3 [INFO] [stderr] | [INFO] [stderr] 46 | nextStpId: i32, [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `next_stp_id` [INFO] [stderr] [INFO] [stderr] warning: structure field `nextStaNm` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:47:3 [INFO] [stderr] | [INFO] [stderr] 47 | nextStaNm: String, [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `next_sta_nm` [INFO] [stderr] [INFO] [stderr] warning: structure field `arrT` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:51:3 [INFO] [stderr] | [INFO] [stderr] 51 | arrT: NaiveDateTime, [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `arr_t` [INFO] [stderr] [INFO] [stderr] warning: structure field `isApp` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:53:3 [INFO] [stderr] | [INFO] [stderr] 53 | isApp: i8, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `is_app` [INFO] [stderr] [INFO] [stderr] warning: structure field `isDly` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:55:3 [INFO] [stderr] | [INFO] [stderr] 55 | isDly: i8, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `is_dly` [INFO] [stderr] [INFO] [stderr] warning: structure field `errCd` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:70:3 [INFO] [stderr] | [INFO] [stderr] 70 | errCd: i32, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `err_cd` [INFO] [stderr] [INFO] [stderr] warning: structure field `errNm` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:71:3 [INFO] [stderr] | [INFO] [stderr] 71 | errNm: Option, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `err_nm` [INFO] [stderr] [INFO] [stderr] warning: structure field `destSt` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:82:3 [INFO] [stderr] | [INFO] [stderr] 82 | destSt: i32, [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `dest_st` [INFO] [stderr] [INFO] [stderr] warning: structure field `destNm` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:83:3 [INFO] [stderr] | [INFO] [stderr] 83 | destNm: String, [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `dest_nm` [INFO] [stderr] [INFO] [stderr] warning: structure field `trDr` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:85:3 [INFO] [stderr] | [INFO] [stderr] 85 | trDr: i8, [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `tr_dr` [INFO] [stderr] [INFO] [stderr] warning: structure field `arrT` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:89:3 [INFO] [stderr] | [INFO] [stderr] 89 | arrT: NaiveDateTime, [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `arr_t` [INFO] [stderr] [INFO] [stderr] warning: structure field `isApp` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:91:3 [INFO] [stderr] | [INFO] [stderr] 91 | isApp: i8, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `is_app` [INFO] [stderr] [INFO] [stderr] warning: structure field `isSch` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:93:3 [INFO] [stderr] | [INFO] [stderr] 93 | isSch: i8, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `is_sch` [INFO] [stderr] [INFO] [stderr] warning: structure field `isDly` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:95:3 [INFO] [stderr] | [INFO] [stderr] 95 | isDly: i8, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `is_dly` [INFO] [stderr] [INFO] [stderr] warning: structure field `isFlt` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:97:3 [INFO] [stderr] | [INFO] [stderr] 97 | isFlt: i8, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `is_flt` [INFO] [stderr] [INFO] [stderr] warning: structure field `errCd` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:173:3 [INFO] [stderr] | [INFO] [stderr] 173 | errCd: i32, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `err_cd` [INFO] [stderr] [INFO] [stderr] warning: structure field `errNm` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:174:3 [INFO] [stderr] | [INFO] [stderr] 174 | errNm: Option, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `err_nm` [INFO] [stderr] [INFO] [stderr] warning: structure field `staId` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:194:7 [INFO] [stderr] | [INFO] [stderr] 194 | pub staId: i32, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `sta_id` [INFO] [stderr] [INFO] [stderr] warning: structure field `stpId` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:196:7 [INFO] [stderr] | [INFO] [stderr] 196 | pub stpId: i32, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `stp_id` [INFO] [stderr] [INFO] [stderr] warning: structure field `staNm` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:197:7 [INFO] [stderr] | [INFO] [stderr] 197 | pub staNm: String, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `sta_nm` [INFO] [stderr] [INFO] [stderr] warning: structure field `destSt` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:202:7 [INFO] [stderr] | [INFO] [stderr] 202 | pub destSt: i32, [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `dest_st` [INFO] [stderr] [INFO] [stderr] warning: structure field `destNm` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:203:7 [INFO] [stderr] | [INFO] [stderr] 203 | pub destNm: String, [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `dest_nm` [INFO] [stderr] [INFO] [stderr] warning: structure field `trDr` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:205:7 [INFO] [stderr] | [INFO] [stderr] 205 | pub trDr: i8, [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `tr_dr` [INFO] [stderr] [INFO] [stderr] warning: structure field `arrT` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:209:7 [INFO] [stderr] | [INFO] [stderr] 209 | pub arrT: NaiveDateTime, [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `arr_t` [INFO] [stderr] [INFO] [stderr] warning: structure field `isApp` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:211:7 [INFO] [stderr] | [INFO] [stderr] 211 | pub isApp: i8, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `is_app` [INFO] [stderr] [INFO] [stderr] warning: structure field `isSch` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:213:7 [INFO] [stderr] | [INFO] [stderr] 213 | pub isSch: i8, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `is_sch` [INFO] [stderr] [INFO] [stderr] warning: structure field `isDly` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:215:7 [INFO] [stderr] | [INFO] [stderr] 215 | pub isDly: i8, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `is_dly` [INFO] [stderr] [INFO] [stderr] warning: structure field `isFlt` should have a snake case name [INFO] [stderr] --> src/cta/traintracker.rs:217:7 [INFO] [stderr] | [INFO] [stderr] 217 | pub isFlt: i8, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `is_flt` [INFO] [stderr] [INFO] [stderr] warning: associated constant `base_url` should have an upper case name [INFO] [stderr] --> src/cta/traintracker.rs:232:9 [INFO] [stderr] | [INFO] [stderr] 232 | const base_url: &str = "https://lapi.transitchicago.com/api/1.0/"; [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to upper case: `BASE_URL` [INFO] [stderr] [INFO] [stderr] warning: `cta-discord-rust` (bin "cta-discord-rust" test) generated 64 warnings (run `cargo fix --bin "cta-discord-rust" --tests` to apply 4 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.33s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/cta_discord_rust-edfab1621a4690d4) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "c5201c6a7430069a19300507094dc9ea780a7fc1d9a7c4bd24a4ccd7c834ddc6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c5201c6a7430069a19300507094dc9ea780a7fc1d9a7c4bd24a4ccd7c834ddc6", kill_on_drop: false }` [INFO] [stdout] c5201c6a7430069a19300507094dc9ea780a7fc1d9a7c4bd24a4ccd7c834ddc6