[INFO] cloning repository https://github.com/YoruAi/RustStudy
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/YoruAi/RustStudy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYoruAi%2FRustStudy", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYoruAi%2FRustStudy'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3520973f0097d52a13779d1137493ca9e422d5c0
[INFO] checking YoruAi/RustStudy against master#4b9792692fbb675174d4d2082e7c37b2bc930e71 for pr-153692-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYoruAi%2FRustStudy" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-5-tc1/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/YoruAi/RustStudy
[INFO] finished tweaking git repo https://github.com/YoruAi/RustStudy
[INFO] tweaked toml for git repo https://github.com/YoruAi/RustStudy written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/YoruAi/RustStudy on toolchain 4b9792692fbb675174d4d2082e7c37b2bc930e71
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4b9792692fbb675174d4d2082e7c37b2bc930e71" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/YoruAi/RustStudy 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" "+4b9792692fbb675174d4d2082e7c37b2bc930e71" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.110
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.110
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.110
[INFO] [stderr]   Downloaded tokio-macros v2.6.1
[INFO] [stderr]   Downloaded rkyv_derive v0.7.46
[INFO] [stderr]   Downloaded crc v3.4.0
[INFO] [stderr]   Downloaded borsh-derive v1.6.0
[INFO] [stderr]   Downloaded libredox v0.1.14
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.110
[INFO] [stderr]   Downloaded whoami v1.6.1
[INFO] [stderr]   Downloaded ouroboros v0.18.5
[INFO] [stderr]   Downloaded is-terminal v0.4.17
[INFO] [stderr]   Downloaded redox_syscall v0.7.3
[INFO] [stderr]   Downloaded sqlx-macros v0.8.6
[INFO] [stderr]   Downloaded pgvector v0.4.1
[INFO] [stderr]   Downloaded ouroboros_macro v0.18.5
[INFO] [stderr]   Downloaded sqlx-sqlite v0.8.6
[INFO] [stderr]   Downloaded borsh v1.6.0
[INFO] [stderr]   Downloaded sqlx-macros-core v0.8.6
[INFO] [stderr]   Downloaded sea-orm-macros v1.1.19
[INFO] [stderr]   Downloaded ubyte v0.10.4
[INFO] [stderr]   Downloaded js-sys v0.3.87
[INFO] [stderr]   Downloaded pear_codegen v0.2.9
[INFO] [stderr]   Downloaded devise v0.4.2
[INFO] [stderr]   Downloaded devise_codegen v0.4.2
[INFO] [stderr]   Downloaded sqlx-mysql v0.8.6
[INFO] [stderr]   Downloaded tempfile v3.26.0
[INFO] [stderr]   Downloaded state v0.6.0
[INFO] [stderr]   Downloaded generator v0.7.5
[INFO] [stderr]   Downloaded inlinable_string v0.1.15
[INFO] [stderr]   Downloaded devise_core v0.4.2
[INFO] [stderr]   Downloaded binascii v0.1.4
[INFO] [stderr]   Downloaded bcrypt v0.18.0
[INFO] [stderr]   Downloaded servo_arc v0.3.0
[INFO] [stderr]   Downloaded rkyv v0.7.46
[INFO] [stderr]   Downloaded stable-pattern v0.1.0
[INFO] [stderr]   Downloaded pear v0.2.9
[INFO] [stderr]   Downloaded sqlx-core v0.8.6
[INFO] [stderr]   Downloaded trpl v0.3.0
[INFO] [stderr]   Downloaded scraper v0.20.0
[INFO] [stderr]   Downloaded rust_decimal v1.40.0
[INFO] [stderr]   Downloaded bigdecimal v0.4.10
[INFO] [stderr]   Downloaded loom v0.5.6
[INFO] [stderr]   Downloaded sqlx-postgres v0.8.6
[INFO] [stderr]   Downloaded rocket_http v0.5.1
[INFO] [stderr]   Downloaded selectors v0.25.0
[INFO] [stderr]   Downloaded sqlx v0.8.6
[INFO] [stderr]   Downloaded rocket_codegen v0.5.1
[INFO] [stderr]   Downloaded cssparser v0.31.2
[INFO] [stderr]   Downloaded getopts v0.2.24
[INFO] [stderr]   Downloaded webpki-roots v1.0.6
[INFO] [stderr]   Downloaded ego-tree v0.6.3
[INFO] [stderr]   Downloaded html5ever v0.27.0
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.60
[INFO] [stderr]   Downloaded markup5ever v0.12.1
[INFO] [stderr]   Downloaded sea-query v0.32.7
[INFO] [stderr]   Downloaded rocket v0.5.1
[INFO] [stderr]   Downloaded web-sys v0.3.87
[INFO] [stderr]   Downloaded sea-orm v1.1.19
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+4b9792692fbb675174d4d2082e7c37b2bc930e71" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8c9a209ec1220b5fc5f16176dfd9081001d25efcf7c61fe23a6d9d292e069ae6
[INFO] running `Command { std: "docker" "start" "-a" "8c9a209ec1220b5fc5f16176dfd9081001d25efcf7c61fe23a6d9d292e069ae6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8c9a209ec1220b5fc5f16176dfd9081001d25efcf7c61fe23a6d9d292e069ae6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8c9a209ec1220b5fc5f16176dfd9081001d25efcf7c61fe23a6d9d292e069ae6", kill_on_drop: false }`
[INFO] [stdout] 8c9a209ec1220b5fc5f16176dfd9081001d25efcf7c61fe23a6d9d292e069ae6
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+4b9792692fbb675174d4d2082e7c37b2bc930e71" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6dcf8f329328d99323f5d1ecfe75597b41993f84bc1ff436ba3219f9799c7e18
[INFO] running `Command { std: "docker" "start" "-a" "6dcf8f329328d99323f5d1ecfe75597b41993f84bc1ff436ba3219f9799c7e18", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]     Checking cfg-if v1.0.4
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling zerocopy v0.8.39
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking itoa v1.0.17
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking lock_api v0.4.14
[INFO] [stderr]     Checking futures-core v0.3.32
[INFO] [stderr]     Checking bytes v1.11.1
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]     Checking memchr v2.8.0
[INFO] [stderr]     Checking futures-sink v0.3.32
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking futures-channel v0.3.32
[INFO] [stderr]     Checking futures-task v0.3.32
[INFO] [stderr]     Checking slab v0.4.12
[INFO] [stderr]     Checking futures-io v0.3.32
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]     Checking litemap v0.8.1
[INFO] [stderr]     Checking writeable v0.6.2
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]    Compiling icu_properties_data v2.1.2
[INFO] [stderr]    Compiling icu_normalizer_data v2.1.1
[INFO] [stderr]    Compiling siphasher v1.0.2
[INFO] [stderr]     Checking bitflags v2.11.0
[INFO] [stderr]    Compiling rustls v0.23.36
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking webpki-roots v1.0.6
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling siphasher v0.3.11
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]     Checking new_debug_unreachable v1.0.6
[INFO] [stderr]    Compiling phf_shared v0.10.0
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking precomputed-hash v0.1.1
[INFO] [stderr]     Checking mac v0.1.1
[INFO] [stderr]     Checking futf v0.1.5
[INFO] [stderr]     Checking const-oid v0.9.6
[INFO] [stderr]     Checking dtoa v1.0.11
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]     Checking dtoa-short v0.3.5
[INFO] [stderr]     Checking tendril v0.4.3
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.10.1
[INFO] [stderr]     Checking phf v0.10.1
[INFO] [stderr]     Checking fxhash v0.2.1
[INFO] [stderr]     Checking servo_arc v0.3.0
[INFO] [stderr]     Checking iri-string v0.7.10
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]    Compiling num-conv v0.2.0
[INFO] [stderr]     Checking unicode-width v0.2.2
[INFO] [stderr]     Checking ryu v1.0.23
[INFO] [stderr]    Compiling yansi v1.0.1
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]     Checking getopts v0.2.24
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]     Checking ego-tree v0.6.3
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking hashbrown v0.16.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling hello-macro-function v0.1.0 (/opt/rustwide/workdir/chapter20-advanced-features/hello-macro-function)
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking deranged v0.5.8
[INFO] [stderr]     Checking indexmap v2.13.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]     Checking base64ct v1.8.3
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]     Checking pem-rfc7468 v0.7.0
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]    Compiling phf_generator v0.10.0
[INFO] [stderr]    Compiling phf_codegen v0.11.3
[INFO] [stderr]    Compiling string_cache_codegen v0.5.4
[INFO] [stderr]    Compiling phf_codegen v0.10.0
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling pin-project-lite v0.2.16
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]     Checking rustls-webpki v0.103.9
[INFO] [stderr]    Compiling phf_macros v0.11.3
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]    Compiling markup5ever v0.12.1
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking phf v0.11.3
[INFO] [stderr]    Compiling selectors v0.25.0
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]    Compiling cssparser-macros v0.6.1
[INFO] [stderr]    Compiling html5ever v0.27.0
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking cssparser v0.31.2
[INFO] [stderr]    Compiling derive_more v0.99.20
[INFO] [stderr]    Compiling hello-macro-attribute v0.1.0 (/opt/rustwide/workdir/chapter20-advanced-features/hello-macro-attribute)
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]    Compiling hello-macro-derive v0.1.0 (/opt/rustwide/workdir/chapter20-advanced-features/hello-macro-derive)
[INFO] [stderr]     Checking chapter20-advanced-features v0.1.0 (/opt/rustwide/workdir/chapter20-advanced-features)
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking der v0.7.10
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]    Compiling bigdecimal v0.4.10
[INFO] [stderr]    Compiling rust_decimal v1.40.0
[INFO] [stderr]     Checking chapter12-io-project v0.1.0 (/opt/rustwide/workdir/chapter12-io-project)
[INFO] [stderr]    Compiling pear_codegen v0.2.9
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking tokio-stream v0.1.18
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking string_cache v0.8.9
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling num-bigint-dig v0.8.6
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking allocator-api2 v0.2.21
[INFO] [stderr]    Compiling ref-cast v1.0.25
[INFO] [stderr]     Checking iana-time-zone v0.1.65
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking tinyvec v1.10.0
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]    Compiling ref-cast-impl v1.0.25
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking uuid v1.21.0
[INFO] [stderr]     Checking parking v2.2.1
[INFO] [stderr]     Checking scraper v0.20.0
[INFO] [stderr]     Checking crc-catalog v2.4.0
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling powerfmt v0.2.0
[INFO] [stderr]     Checking hyper-rustls v0.27.7
[INFO] [stderr]     Checking crc v3.4.0
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]    Compiling http v0.2.12
[INFO] [stderr]     Checking event-listener v5.4.1
[INFO] [stderr]     Checking unicode-normalization v0.1.25
[INFO] [stderr]     Checking hashlink v0.10.0
[INFO] [stderr]     Checking trpl v0.3.0
[INFO] [stderr]     Checking pkcs1 v0.7.5
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking crossbeam-queue v0.3.12
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking webpki-roots v0.26.11
[INFO] [stderr]     Checking futures-intrusive v0.5.0
[INFO] [stderr]     Checking is-terminal v0.4.17
[INFO] [stderr]    Compiling uncased v0.9.10
[INFO] [stderr]     Checking unicode-properties v0.1.4
[INFO] [stderr]    Compiling try-lock v0.2.5
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]     Checking sqlx-core v0.8.6
[INFO] [stderr]     Checking stringprep v0.1.5
[INFO] [stderr]    Compiling want v0.3.1
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]    Compiling devise_core v0.4.2
[INFO] [stderr]     Checking rsa v0.9.10
[INFO] [stderr]    Compiling http-body v0.4.6
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking md-5 v0.10.6
[INFO] [stderr]     Checking atoi v2.0.0
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]     Checking winnow v0.7.14
[INFO] [stderr]    Compiling tower-service v0.3.3
[INFO] [stderr]    Compiling inlinable_string v0.1.15
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling httpdate v1.0.3
[INFO] [stderr]     Checking dotenvy v0.15.7
[INFO] [stderr]     Checking whoami v1.6.1
[INFO] [stderr]     Checking toml_write v0.1.2
[INFO] [stderr]    Compiling pear v0.2.9
[INFO] [stderr]    Compiling stable-pattern v0.1.0
[INFO] [stderr]     Checking sqlx-mysql v0.8.6
[INFO] [stderr]    Compiling devise_codegen v0.4.2
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]     Checking h2 v0.3.27
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling inherent v1.0.13
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking ordered-float v4.6.0
[INFO] [stderr]    Compiling hyper v0.14.32
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]    Compiling figment v0.10.19
[INFO] [stderr]    Compiling multer v3.1.0
[INFO] [stderr]    Compiling state v0.6.0
[INFO] [stderr]     Checking chapter11-tests v0.1.0 (/opt/rustwide/workdir/chapter11-tests)
[INFO] [stderr]     Checking linux-raw-sys v0.12.1
[INFO] [stderr]     Checking sqlx v0.8.6
[INFO] [stderr]     Checking sea-query v0.32.7
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]    Compiling devise v0.4.2
[INFO] [stderr]    Compiling sea-bae v0.2.1
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling ouroboros_macro v0.18.5
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]    Compiling rocket_http v0.5.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]    Compiling rocket v0.5.1
[INFO] [stderr]     Checking chapter21-web-server-project v0.1.0 (/opt/rustwide/workdir/chapter21-web-server-project)
[INFO] [stderr]     Checking aliasable v0.1.3
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]     Checking ouroboros v0.18.5
[INFO] [stderr]    Compiling sea-orm-macros v1.1.19
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking sea-query-binder v0.7.0
[INFO] [stderr]     Checking tempfile v3.26.0
[INFO] [stderr]     Checking blowfish v0.9.1
[INFO] [stderr]     Checking ubyte v0.10.4
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking binascii v0.1.4
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]     Checking atomic v0.5.3
[INFO] [stderr]     Checking bcrypt v0.18.0
[INFO] [stdout] warning: function `add` is never used
[INFO] [stdout]   --> chapter11-tests/src/bin/tests.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn add(a: u32, b: u32) -> u32 {
[INFO] [stdout]    |    ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking chapter17-async-await v0.1.0 (/opt/rustwide/workdir/chapter17-async-await)
[INFO] [stderr]     Checking chapter13-functional-features v0.1.0 (/opt/rustwide/workdir/chapter13-functional-features)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> chapter13-functional-features/src/bin/iterator.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let mut v1 = vec![1, 2, 3];
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1_iter`
[INFO] [stdout]  --> chapter13-functional-features/src/bin/iterator.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let v1_iter = v1.iter(); // &
[INFO] [stdout]   |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_v1_iter`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1_iter`
[INFO] [stdout]  --> chapter13-functional-features/src/bin/iterator.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let v1_iter = v1.iter_mut(); // &mut
[INFO] [stdout]   |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_v1_iter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]   --> chapter13-functional-features/src/bin/iterator.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let count = v1.iter().count();
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `collect`
[INFO] [stdout]   --> chapter13-functional-features/src/bin/iterator.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let collect: Vec<i32> = v1.iter().copied().collect();
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_collect`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `closure`
[INFO] [stdout]  --> chapter13-functional-features/src/bin/closures.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let closure = |num: u32| -> u32 { num };
[INFO] [stdout]   |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_closure`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]  --> chapter13-functional-features/src/bin/closures.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let s = closure(String::from("hello"));
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> chapter13-functional-features/src/bin/iterator.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let mut v1 = vec![1, 2, 3];
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1_iter`
[INFO] [stdout]  --> chapter13-functional-features/src/bin/iterator.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let v1_iter = v1.iter(); // &
[INFO] [stdout]   |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_v1_iter`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1_iter`
[INFO] [stdout]  --> chapter13-functional-features/src/bin/iterator.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let v1_iter = v1.iter_mut(); // &mut
[INFO] [stdout]   |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_v1_iter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]   --> chapter13-functional-features/src/bin/iterator.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let count = v1.iter().count();
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `collect`
[INFO] [stdout]   --> chapter13-functional-features/src/bin/iterator.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let collect: Vec<i32> = v1.iter().copied().collect();
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_collect`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `closure`
[INFO] [stdout]  --> chapter13-functional-features/src/bin/closures.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let closure = |num: u32| -> u32 { num };
[INFO] [stdout]   |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_closure`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]  --> chapter13-functional-features/src/bin/closures.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let s = closure(String::from("hello"));
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `answer`
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_functions_and_closures.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let answer = do_twice(add_one, 5);
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_answer`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `list_of_statuses`
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_functions_and_closures.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let list_of_statuses: Vec<Status> = (0u32..20).map(Status::Value).collect();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_list_of_statuses`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_functions_and_closures.rs:13:15
[INFO] [stdout]    |
[INFO] [stdout] 13 |         Value(u32),
[INFO] [stdout]    |         ----- ^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 13 -         Value(u32),
[INFO] [stdout] 13 +         Value(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Stop` is never constructed
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_functions_and_closures.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     enum Status {
[INFO] [stdout]    |          ------ variant in this enum
[INFO] [stdout] 13 |         Value(u32),
[INFO] [stdout] 14 |         Stop,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `returns_closure` is never used
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_functions_and_closures.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn returns_closure() -> impl Fn(i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `returns_init_closure` is never used
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_functions_and_closures.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn returns_init_closure(init: i32) -> impl Fn(i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/unsafe_rust.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let r = address as *const i32;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `answer`
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_functions_and_closures.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let answer = do_twice(add_one, 5);
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_answer`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `list_of_statuses`
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_functions_and_closures.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let list_of_statuses: Vec<Status> = (0u32..20).map(Status::Value).collect();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_list_of_statuses`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f`
[INFO] [stdout]  --> chapter20-advanced-features/src/bin/advanced_types.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let f: Thunk = Box::new(|_| true);
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_f`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num`
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_types.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let num: u32 = match "err".trim().parse() {
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_types.rs:26:25
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn generic_sized<T>(t: T) {} // T: Sized
[INFO] [stdout]    |                         ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_types.rs:27:27
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn generic<T: ?Sized>(t: &T) {} // only Sized can be used with ?, T can be Sized or not Sized
[INFO] [stdout]    |                           ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/unsafe_rust.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let r = address as *const i32;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Foo` is never used
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/unsafe_rust.rs:51:18
[INFO] [stdout]    |
[INFO] [stdout] 51 |     unsafe trait Foo {}
[INFO] [stdout]    |                  ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking chapter02-guessing-game v0.1.0 (/opt/rustwide/workdir/chapter02-guessing-game)
[INFO] [stdout] warning: unused variable: `f`
[INFO] [stdout]  --> chapter20-advanced-features/src/bin/advanced_types.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let f: Thunk = Box::new(|_| true);
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_f`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num`
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_types.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let num: u32 = match "err".trim().parse() {
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Iterator` is never used
[INFO] [stdout]  --> chapter20-advanced-features/src/bin/advanced_traits.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub trait Iterator {
[INFO] [stdout]   |               ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_types.rs:26:25
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn generic_sized<T>(t: T) {} // T: Sized
[INFO] [stdout]    |                         ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_types.rs:27:27
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn generic<T: ?Sized>(t: &T) {} // only Sized can be used with ?, T can be Sized or not Sized
[INFO] [stdout]    |                           ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Millimeters` is never constructed
[INFO] [stdout]  --> chapter20-advanced-features/src/bin/advanced_types.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 |     struct Millimeters(u32);
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Kilometers` is never used
[INFO] [stdout]  --> chapter20-advanced-features/src/bin/advanced_types.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 |     type Kilometers = u32; // synonym for u32, not a new type
[INFO] [stdout]   |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Result` is never used
[INFO] [stdout]  --> chapter20-advanced-features/src/bin/advanced_types.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 |     type Result<T> = std::result::Result<T, std::io::Error>;
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bar` is never used
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_types.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn bar() -> ! {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generic_sized` is never used
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_types.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn generic_sized<T>(t: T) {} // T: Sized
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generic` is never used
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_types.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn generic<T: ?Sized>(t: &T) {} // only Sized can be used with ?, T can be Sized or not Sized
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_traits.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 |     struct Point {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Millimeters` is never constructed
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_traits.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 |     struct Millimeters(u32);
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Meters` is never constructed
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_traits.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 |     struct Meters(u32);
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `OutlinePrint` is never used
[INFO] [stdout]   --> chapter20-advanced-features/src/bin/advanced_traits.rs:85:11
[INFO] [stdout]    |
[INFO] [stdout] 85 |     trait OutlinePrint: Display {
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking chapter04-ownership v0.1.0 (/opt/rustwide/workdir/chapter04-ownership)
[INFO] [stderr]     Checking chapter03-common-concepts v0.1.0 (/opt/rustwide/workdir/chapter03-common-concepts)
[INFO] [stderr]     Checking chapter05-structs v0.1.0 (/opt/rustwide/workdir/chapter05-structs)
[INFO] [stderr]     Checking chapter07-crates-and-modules v0.1.0 (/opt/rustwide/workdir/chapter07-crates-and-modules)
[INFO] [stderr]    Compiling rocket_codegen v0.5.1
[INFO] [stderr]     Checking appendix v0.1.0 (/opt/rustwide/workdir/appendix)
[INFO] [stderr]     Checking chapter15-smart-pointer v0.1.0 (/opt/rustwide/workdir/chapter15-smart-pointer)
[INFO] [stdout] warning: unused variable: `list`
[INFO] [stdout]   --> chapter15-smart-pointer/src/bin/ptr_box.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let list = List::Cons(1, Box::new(List::Cons(2, Box::new(List::Nil))));
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_list`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `x` and `y` are never read
[INFO] [stdout]   --> chapter07-crates-and-modules/src/bin/paths.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 22 |         pub struct SubInner {
[INFO] [stdout]    |                    -------- fields in this struct
[INFO] [stdout] 23 |             pub x: i32,
[INFO] [stdout]    |                 ^
[INFO] [stdout] 24 |             y: i32, // private
[INFO] [stdout]    |             ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `SubInnerEnum` is never used
[INFO] [stdout]   --> chapter07-crates-and-modules/src/bin/paths.rs:32:18
[INFO] [stdout]    |
[INFO] [stdout] 32 |         pub enum SubInnerEnum {
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking chapter16-concurrency v0.1.0 (/opt/rustwide/workdir/chapter16-concurrency)
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]   --> chapter16-concurrency/src/bin/message_passing.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     let err = rx.try_recv().unwrap_err();
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking chapter08-collections v0.1.0 (/opt/rustwide/workdir/chapter08-collections)
[INFO] [stderr]     Checking chapter09-error v0.1.0 (/opt/rustwide/workdir/chapter09-error)
[INFO] [stderr]     Checking chapter19-patterns-and-matching v0.1.0 (/opt/rustwide/workdir/chapter19-patterns-and-matching)
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> chapter15-smart-pointer/src/bin/ptr_ref_cell.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]   --> chapter15-smart-pointer/src/bin/deref.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn hello(name: &str) {}
[INFO] [stdout]    |              ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 |     if let Some(i) = x {
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:13:14
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let Some(i) = x else {
[INFO] [stdout]    |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 |     while let Some(i) = x {
[INFO] [stdout]    |                    ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 |     for (index, value) in v.iter().enumerate() {}
[INFO] [stdout]    |          ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 |     for (index, value) in v.iter().enumerate() {}
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let (x, y) = (1, 2);
[INFO] [stdout]    |          ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let (x, y) = (1, 2);
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:25:22
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn coordinates(&(x, y): &(i32, i32)) {}
[INFO] [stdout]    |                      ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:25:25
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn coordinates(&(x, y): &(i32, i32)) {}
[INFO] [stdout]    |                         ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> chapter08-collections/src/bin/string.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut s = String::new();
[INFO] [stdout]   |         ----^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> chapter08-collections/src/bin/string.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let mut s2 = String::from("hello world! ");
[INFO] [stdout]   |         ----^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]  --> chapter08-collections/src/bin/string.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut s = String::new();
[INFO] [stdout]   |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> chapter08-collections/src/bin/string.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let s = format!("{s2}-{s3}");
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s1`
[INFO] [stdout]   --> chapter08-collections/src/bin/string.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let s1 = &s[0..3]; // unsafe, if 0..2 it will panic
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_s1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking chapter14-cargo v0.1.0 (/opt/rustwide/workdir/chapter14-cargo)
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> chapter15-smart-pointer/src/bin/ptr_rc.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let b = Cons(3, Rc::clone(&a));
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> chapter15-smart-pointer/src/bin/ptr_rc.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |         let c = Cons(4, Rc::clone(&a));
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `readme_file`
[INFO] [stdout]   --> chapter09-error/src/bin/result.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let readme_file = readme_file_result.unwrap_or_else(|error| match error.kind() {
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_readme_file`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `readme_file`
[INFO] [stdout]   --> chapter09-error/src/bin/result.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let readme_file = File::open("README.md").expect("open file error");
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_readme_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_content_from_file` is never used
[INFO] [stdout]   --> chapter09-error/src/bin/result.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 |     fn read_content_from_file() -> Result<String, io::Error> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_content_from_file_simple` is never used
[INFO] [stdout]   --> chapter09-error/src/bin/result.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn read_content_from_file_simple() -> Result<String, io::Error> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `last_char_of_first_line` is never used
[INFO] [stdout]   --> chapter09-error/src/bin/result.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn last_char_of_first_line(text: &str) -> Option<char> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> chapter15-smart-pointer/src/bin/ptr_ref_cell.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> chapter15-smart-pointer/src/bin/ptr_weak.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 |         Cons(i32, RefCell<Rc<List>>),
[INFO] [stdout]    |         ---- ^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `List` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 11 -         Cons(i32, RefCell<Rc<List>>),
[INFO] [stdout] 11 +         Cons((), RefCell<Rc<List>>),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `children` are never read
[INFO] [stdout]   --> chapter15-smart-pointer/src/bin/ptr_weak.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     struct Node {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] 24 |         value: i32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 25 |         parent: RefCell<Weak<Node>>,
[INFO] [stdout] 26 |         children: RefCell<Vec<Rc<Node>>>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `1` is never read
[INFO] [stdout]   --> chapter15-smart-pointer/src/bin/ptr_ref_cell.rs:24:28
[INFO] [stdout]    |
[INFO] [stdout] 24 |         Cons(RefCell<i32>, Rc<List>),
[INFO] [stdout]    |         ----               ^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `List` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 24 -         Cons(RefCell<i32>, Rc<List>),
[INFO] [stdout] 24 +         Cons(RefCell<i32>, ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> chapter15-smart-pointer/src/bin/ptr_rc.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let b = Cons(3, Rc::clone(&a));
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> chapter15-smart-pointer/src/bin/ptr_rc.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |         let c = Cons(4, Rc::clone(&a));
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> chapter15-smart-pointer/src/bin/ptr_rc.rs:10:14
[INFO] [stdout]    |
[INFO] [stdout] 10 |         Cons(i32, Rc<List>),
[INFO] [stdout]    |         ---- ^^^  ^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 10 -         Cons(i32, Rc<List>),
[INFO] [stdout] 10 +         Cons((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking chapter18-object-oriented v0.1.0 (/opt/rustwide/workdir/chapter18-object-oriented)
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]   --> appendix/src/bin/c.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 |     struct Point {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking chapter10-generic-traits-lifetimes v0.1.0 (/opt/rustwide/workdir/chapter10-generic-traits-lifetimes)
[INFO] [stdout] warning: unused variable: `string3`
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/lifetime.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |         let string3 = String::from("'b");
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_string3`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `string3`
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/lifetime.rs:19:13
[INFO] [stdout]    |
[INFO] [stdout] 19 |         let string3 = String::from("'a");
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_string3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `announce` is never used
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/lifetime.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | impl<'a> ImportantExcerpt<'a> {
[INFO] [stdout]    | ----------------------------- method in this implementation
[INFO] [stdout] 38 |     fn announce<'b>(&self, announcement: &'b str) -> &'b str {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `post`
[INFO] [stdout]   --> chapter18-object-oriented/src/bin/oop_features.rs:64:27
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn content<'a>(&self, post: &'a Post) -> &'a str {
[INFO] [stdout]    |                           ^^^^ help: if this is intentional, prefix it with an underscore: `_post`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 |     if let Some(i) = x {
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:13:14
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let Some(i) = x else {
[INFO] [stdout]    |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 |     while let Some(i) = x {
[INFO] [stdout]    |                    ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 |     for (index, value) in v.iter().enumerate() {}
[INFO] [stdout]    |          ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 |     for (index, value) in v.iter().enumerate() {}
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let (x, y) = (1, 2);
[INFO] [stdout]    |          ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let (x, y) = (1, 2);
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:25:22
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn coordinates(&(x, y): &(i32, i32)) {}
[INFO] [stdout]    |                      ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/patterns_places.rs:25:25
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn coordinates(&(x, y): &(i32, i32)) {}
[INFO] [stdout]    |                         ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking chapter06-enums-and-match v0.1.0 (/opt/rustwide/workdir/chapter06-enums-and-match)
[INFO] [stdout] warning: enum `IpAddrKind` is never used
[INFO] [stdout]  --> chapter06-enums-and-match/src/bin/enums_and_match.rs:2:6
[INFO] [stdout]   |
[INFO] [stdout] 2 | enum IpAddrKind {
[INFO] [stdout]   |      ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0`, `1`, `2`, and `3` are never read
[INFO] [stdout]  --> chapter06-enums-and-match/src/bin/enums_and_match.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 |     V4(u8, u8, u8, u8),
[INFO] [stdout]   |     -- ^^  ^^  ^^  ^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     fields in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `IpAddr` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]   |
[INFO] [stdout] 8 -     V4(u8, u8, u8, u8),
[INFO] [stdout] 8 +     V4((), (), (), ()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> chapter06-enums-and-match/src/bin/enums_and_match.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 |     V6(String),
[INFO] [stdout]   |     -- ^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `IpAddr` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 9 -     V6(String),
[INFO] [stdout] 9 +     V6(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Quit`, `Move`, and `ChangeColor` are never constructed
[INFO] [stdout]   --> chapter06-enums-and-match/src/bin/enums_and_match.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | enum Message {
[INFO] [stdout]    |      ------- variants in this enum
[INFO] [stdout] 13 |     Quit,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 14 |     Move { x: i32, y: i32 },
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 15 |     Write(String),
[INFO] [stdout] 16 |     ChangeColor(i32, i32, i32),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `post`
[INFO] [stdout]   --> chapter18-object-oriented/src/bin/oop_features.rs:64:27
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn content<'a>(&self, post: &'a Post) -> &'a str {
[INFO] [stdout]    |                           ^^^^ help: if this is intentional, prefix it with an underscore: `_post`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking chapter01-helloworld v0.1.0 (/opt/rustwide/workdir/chapter01-helloworld)
[INFO] [stdout] warning: enum `IpAddrKind` is never used
[INFO] [stdout]  --> chapter06-enums-and-match/src/bin/enums_and_match.rs:2:6
[INFO] [stdout]   |
[INFO] [stdout] 2 | enum IpAddrKind {
[INFO] [stdout]   |      ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0`, `1`, `2`, and `3` are never read
[INFO] [stdout]  --> chapter06-enums-and-match/src/bin/enums_and_match.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 |     V4(u8, u8, u8, u8),
[INFO] [stdout]   |     -- ^^  ^^  ^^  ^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     fields in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `IpAddr` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]   |
[INFO] [stdout] 8 -     V4(u8, u8, u8, u8),
[INFO] [stdout] 8 +     V4((), (), (), ()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> chapter06-enums-and-match/src/bin/enums_and_match.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 |     V6(String),
[INFO] [stdout]   |     -- ^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `IpAddr` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 9 -     V6(String),
[INFO] [stdout] 9 +     V6(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Quit`, `Move`, and `ChangeColor` are never constructed
[INFO] [stdout]   --> chapter06-enums-and-match/src/bin/enums_and_match.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | enum Message {
[INFO] [stdout]    |      ------- variants in this enum
[INFO] [stdout] 13 |     Quit,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 14 |     Move { x: i32, y: i32 },
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 15 |     Write(String),
[INFO] [stdout] 16 |     ChangeColor(i32, i32, i32),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `string3`
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/lifetime.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |         let string3 = String::from("'b");
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_string3`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `string3`
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/lifetime.rs:19:13
[INFO] [stdout]    |
[INFO] [stdout] 19 |         let string3 = String::from("'a");
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_string3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `announce` is never used
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/lifetime.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | impl<'a> ImportantExcerpt<'a> {
[INFO] [stdout]    | ----------------------------- method in this implementation
[INFO] [stdout] 38 |     fn announce<'b>(&self, announcement: &'b str) -> &'b str {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/traits.rs:49:24
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn some_function<T, U>(t: &T, u: &U) -> impl Display
[INFO] [stdout]    |                        ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/traits.rs:49:31
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn some_function<T, U>(t: &T, u: &U) -> impl Display
[INFO] [stdout]    |                               ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `some_function` is never used
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/traits.rs:49:4
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn some_function<T, U>(t: &T, u: &U) -> impl Display
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `readme_file`
[INFO] [stdout]   --> chapter09-error/src/bin/result.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let readme_file = readme_file_result.unwrap_or_else(|error| match error.kind() {
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_readme_file`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `readme_file`
[INFO] [stdout]   --> chapter09-error/src/bin/result.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let readme_file = File::open("README.md").expect("open file error");
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_readme_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]   --> chapter15-smart-pointer/src/bin/deref.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn hello(name: &str) {}
[INFO] [stdout]    |              ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `list`
[INFO] [stdout]   --> chapter15-smart-pointer/src/bin/ptr_box.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let list = List::Cons(1, Box::new(List::Cons(2, Box::new(List::Nil))));
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_list`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]  --> chapter15-smart-pointer/src/bin/ptr_box.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 |         Cons(i32, Box<List>),
[INFO] [stdout]   |         ---- ^^^  ^^^^^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         fields in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]   |
[INFO] [stdout] 9 -         Cons(i32, Box<List>),
[INFO] [stdout] 9 +         Cons((), ()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `score`
[INFO] [stdout]   --> chapter08-collections/src/bin/hash_map.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let score = scores.get(&team_name).copied();
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_score`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `best_team_name`
[INFO] [stdout]   --> chapter08-collections/src/bin/hash_map.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let (best_team_name, _) = scores.iter().max_by_key(|&(_, v)| v).expect("empty");
[INFO] [stdout]    |          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_best_team_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `employees`
[INFO] [stdout]   --> chapter08-collections/src/bin/hash_map.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let employees = if let Some(employees) = company.get(&dept) {
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_employees`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]  --> chapter10-generic-traits-lifetimes/src/bin/generic.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let result = largest(&number_list);
[INFO] [stdout]   |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `x` is never read
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/generic.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct Point<T, U> {
[INFO] [stdout]    |        ----- field in this struct
[INFO] [stdout] 23 |     x: T,
[INFO] [stdout]    |     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `x` and `mix` are never used
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/generic.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl<T, U> Point<T, U> {
[INFO] [stdout]    | ---------------------- methods in this implementation
[INFO] [stdout] 28 |     fn x(&self) -> &T {
[INFO] [stdout]    |        ^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn mix<T1, U1>(self, other: Point<T1, U1>) -> Point<T, U1> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> chapter08-collections/src/bin/vector.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     let mut v: Vec<i32> = Vec::new(); // omitted type if compiler can infer
[INFO] [stdout]   |         ----^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]  --> chapter08-collections/src/bin/vector.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     let mut v: Vec<i32> = Vec::new(); // omitted type if compiler can infer
[INFO] [stdout]   |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `third`
[INFO] [stdout]  --> chapter08-collections/src/bin/vector.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let third = v.get(2); // will return None if out of bounds
[INFO] [stdout]   |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_third`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row`
[INFO] [stdout]   --> chapter08-collections/src/bin/vector.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let row = vec![
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> chapter08-collections/src/bin/vector.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |         Int(i32),
[INFO] [stdout]    |         --- ^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 21 -         Int(i32),
[INFO] [stdout] 21 +         Int(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> chapter08-collections/src/bin/vector.rs:22:15
[INFO] [stdout]    |
[INFO] [stdout] 22 |         Float(f64),
[INFO] [stdout]    |         ----- ^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 22 -         Float(f64),
[INFO] [stdout] 22 +         Float(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> chapter08-collections/src/bin/vector.rs:23:14
[INFO] [stdout]    |
[INFO] [stdout] 23 |         Text(String),
[INFO] [stdout]    |         ---- ^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 23 -         Text(String),
[INFO] [stdout] 23 +         Text(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]  --> chapter10-generic-traits-lifetimes/src/bin/generic.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let result = largest(&number_list);
[INFO] [stdout]   |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `x` is never read
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/generic.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct Point<T, U> {
[INFO] [stdout]    |        ----- field in this struct
[INFO] [stdout] 23 |     x: T,
[INFO] [stdout]    |     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `x` and `mix` are never used
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/generic.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl<T, U> Point<T, U> {
[INFO] [stdout]    | ---------------------- methods in this implementation
[INFO] [stdout] 28 |     fn x(&self) -> &T {
[INFO] [stdout]    |        ^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn mix<T1, U1>(self, other: Point<T1, U1>) -> Point<T, U1> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> chapter08-collections/src/bin/vector.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     let mut v: Vec<i32> = Vec::new(); // omitted type if compiler can infer
[INFO] [stdout]   |         ----^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]  --> chapter08-collections/src/bin/vector.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     let mut v: Vec<i32> = Vec::new(); // omitted type if compiler can infer
[INFO] [stdout]   |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `third`
[INFO] [stdout]  --> chapter08-collections/src/bin/vector.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let third = v.get(2); // will return None if out of bounds
[INFO] [stdout]   |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_third`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row`
[INFO] [stdout]   --> chapter08-collections/src/bin/vector.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let row = vec![
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `home`
[INFO] [stdout]   --> chapter09-error/src/bin/panic.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let home: IpAddr = "127.0.0.1"
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_home`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:42:20
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let Point { x: a, y: b } = p;
[INFO] [stdout]    |                    ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:42:26
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let Point { x: a, y: b } = p;
[INFO] [stdout]    |                          ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:43:17
[INFO] [stdout]    |
[INFO] [stdout] 43 |     let Point { x, y } = p; // shorthand
[INFO] [stdout]    |                 ^ help: try ignoring the field: `x: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:43:20
[INFO] [stdout]    |
[INFO] [stdout] 43 |     let Point { x, y } = p; // shorthand
[INFO] [stdout]    |                    ^ help: try ignoring the field: `y: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `feet`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:84:11
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let ((feet, inches), Point { x, y }) = ((3, 10), Point { x: 3, y: -10 });
[INFO] [stdout]    |           ^^^^ help: if this is intentional, prefix it with an underscore: `_feet`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inches`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:84:17
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let ((feet, inches), Point { x, y }) = ((3, 10), Point { x: 3, y: -10 });
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_inches`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:84:34
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let ((feet, inches), Point { x, y }) = ((3, 10), Point { x: 3, y: -10 });
[INFO] [stdout]    |                                  ^ help: try ignoring the field: `x: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:84:37
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let ((feet, inches), Point { x, y }) = ((3, 10), Point { x: 3, y: -10 });
[INFO] [stdout]    |                                     ^ help: try ignoring the field: `y: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:92:10
[INFO] [stdout]    |
[INFO] [stdout] 92 |     let (a, .., d) = (1, 2, 3, 4); // ignore remaining parts of a value(unambiguous)
[INFO] [stdout]    |          ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |     let (a, .., d) = (1, 2, 3, 4); // ignore remaining parts of a value(unambiguous)
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Rgb` is never constructed
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |     enum Color {
[INFO] [stdout]    |          ----- variant in this enum
[INFO] [stdout] 55 |         Rgb(i32, i32, i32),
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Quit`, `Move`, and `Write` are never constructed
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |     enum Message {
[INFO] [stdout]    |          ------- variants in this enum
[INFO] [stdout] 59 |         Quit,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 60 |         Move { x: i32, y: i32 },
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 61 |         Write(String),
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `foo` is never used
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn foo(_: i32, y: i32) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `score`
[INFO] [stdout]   --> chapter08-collections/src/bin/hash_map.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let score = scores.get(&team_name).copied();
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_score`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `home`
[INFO] [stdout]   --> chapter09-error/src/bin/panic.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let home: IpAddr = "127.0.0.1"
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_home`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `best_team_name`
[INFO] [stdout]   --> chapter08-collections/src/bin/hash_map.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let (best_team_name, _) = scores.iter().max_by_key(|&(_, v)| v).expect("empty");
[INFO] [stdout]    |          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_best_team_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `employees`
[INFO] [stdout]   --> chapter08-collections/src/bin/hash_map.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let employees = if let Some(employees) = company.get(&dept) {
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_employees`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]  --> chapter15-smart-pointer/src/bin/drop.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     let c = CustomSmartPointer {
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/traits.rs:49:24
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn some_function<T, U>(t: &T, u: &U) -> impl Display
[INFO] [stdout]    |                        ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/traits.rs:49:31
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn some_function<T, U>(t: &T, u: &U) -> impl Display
[INFO] [stdout]    |                               ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `some_function` is never used
[INFO] [stdout]   --> chapter10-generic-traits-lifetimes/src/bin/traits.rs:49:4
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn some_function<T, U>(t: &T, u: &U) -> impl Display
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:42:20
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let Point { x: a, y: b } = p;
[INFO] [stdout]    |                    ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:42:26
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let Point { x: a, y: b } = p;
[INFO] [stdout]    |                          ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:43:17
[INFO] [stdout]    |
[INFO] [stdout] 43 |     let Point { x, y } = p; // shorthand
[INFO] [stdout]    |                 ^ help: try ignoring the field: `x: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:43:20
[INFO] [stdout]    |
[INFO] [stdout] 43 |     let Point { x, y } = p; // shorthand
[INFO] [stdout]    |                    ^ help: try ignoring the field: `y: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `feet`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:84:11
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let ((feet, inches), Point { x, y }) = ((3, 10), Point { x: 3, y: -10 });
[INFO] [stdout]    |           ^^^^ help: if this is intentional, prefix it with an underscore: `_feet`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inches`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:84:17
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let ((feet, inches), Point { x, y }) = ((3, 10), Point { x: 3, y: -10 });
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_inches`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:84:34
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let ((feet, inches), Point { x, y }) = ((3, 10), Point { x: 3, y: -10 });
[INFO] [stdout]    |                                  ^ help: try ignoring the field: `x: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:84:37
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let ((feet, inches), Point { x, y }) = ((3, 10), Point { x: 3, y: -10 });
[INFO] [stdout]    |                                     ^ help: try ignoring the field: `y: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:92:10
[INFO] [stdout]    |
[INFO] [stdout] 92 |     let (a, .., d) = (1, 2, 3, 4); // ignore remaining parts of a value(unambiguous)
[INFO] [stdout]    |          ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]   --> chapter19-patterns-and-matching/src/bin/pattern_syntax.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |     let (a, .., d) = (1, 2, 3, 4); // ignore remaining parts of a value(unambiguous)
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]  --> chapter15-smart-pointer/src/bin/drop.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     let c = CustomSmartPointer {
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `x` and `y` are never read
[INFO] [stdout]   --> chapter07-crates-and-modules/src/bin/paths.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 22 |         pub struct SubInner {
[INFO] [stdout]    |                    -------- fields in this struct
[INFO] [stdout] 23 |             pub x: i32,
[INFO] [stdout]    |                 ^
[INFO] [stdout] 24 |             y: i32, // private
[INFO] [stdout]    |             ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `SubInnerEnum` is never used
[INFO] [stdout]   --> chapter07-crates-and-modules/src/bin/paths.rs:32:18
[INFO] [stdout]    |
[INFO] [stdout] 32 |         pub enum SubInnerEnum {
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> chapter08-collections/src/bin/string.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut s = String::new();
[INFO] [stdout]   |         ----^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> chapter08-collections/src/bin/string.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let mut s2 = String::from("hello world! ");
[INFO] [stdout]   |         ----^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]  --> chapter08-collections/src/bin/string.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut s = String::new();
[INFO] [stdout]   |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> chapter08-collections/src/bin/string.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let s = format!("{s2}-{s3}");
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s1`
[INFO] [stdout]   --> chapter08-collections/src/bin/string.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let s1 = &s[0..3]; // unsafe, if 0..2 it will panic
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_s1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]   --> chapter16-concurrency/src/bin/message_passing.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     let err = rx.try_recv().unwrap_err();
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking sea-orm v1.1.19
[INFO] [stderr]     Checking rocket-web-application v0.1.0 (/opt/rustwide/workdir/rocket-web-application)
[INFO] [stdout] warning: unused import: `UserServiceError`
[INFO] [stdout]  --> rocket-web-application/src/handlers/user_handler.rs:3:50
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::services::user_service::{UserService, UserServiceError};
[INFO] [stdout]   |                                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rocket::http::Status`
[INFO] [stdout]  --> rocket-web-application/src/handlers/user_handler.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rocket::http::Status;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UserServiceError`
[INFO] [stdout]  --> rocket-web-application/src/handlers/user_handler.rs:3:50
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::services::user_service::{UserService, UserServiceError};
[INFO] [stdout]   |                                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rocket::http::Status`
[INFO] [stdout]  --> rocket-web-application/src/handlers/user_handler.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rocket::http::Status;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status`
[INFO] [stdout]   --> rocket-web-application/src/error.rs:49:14
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let (status, body_struct) = match self {
[INFO] [stdout]    |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status`
[INFO] [stdout]   --> rocket-web-application/src/error.rs:49:14
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let (status, body_struct) = match self {
[INFO] [stdout]    |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> rocket-web-application/src/error.rs:17:19
[INFO] [stdout]    |
[INFO] [stdout] 17 |     DatabaseError(DbErr),
[INFO] [stdout]    |     ------------- ^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 17 -     DatabaseError(DbErr),
[INFO] [stdout] 17 +     DatabaseError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `BadRequest`, `InternalServerError`, and `UserService` are never constructed
[INFO] [stdout]   --> rocket-web-application/src/error.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum AppError {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 17 |     DatabaseError(DbErr),
[INFO] [stdout] 18 |     BadRequest(String),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     InternalServerError(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 23 |     // 可以直接包裹局部错误，或者映射为具体变体
[INFO] [stdout] 24 |     UserService(UserServiceError),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `AppResult` is never used
[INFO] [stdout]   --> rocket-web-application/src/error.rs:95:10
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub type AppResult<T> = Result<T, AppError>;
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> rocket-web-application/src/error.rs:17:19
[INFO] [stdout]    |
[INFO] [stdout] 17 |     DatabaseError(DbErr),
[INFO] [stdout]    |     ------------- ^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 17 -     DatabaseError(DbErr),
[INFO] [stdout] 17 +     DatabaseError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `BadRequest`, `InternalServerError`, and `UserService` are never constructed
[INFO] [stdout]   --> rocket-web-application/src/error.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum AppError {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 17 |     DatabaseError(DbErr),
[INFO] [stdout] 18 |     BadRequest(String),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     InternalServerError(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 23 |     // 可以直接包裹局部错误，或者映射为具体变体
[INFO] [stdout] 24 |     UserService(UserServiceError),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `AppResult` is never used
[INFO] [stdout]   --> rocket-web-application/src/error.rs:95:10
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub type AppResult<T> = Result<T, AppError>;
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 02s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: proc-macro-error2 v2.0.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "6dcf8f329328d99323f5d1ecfe75597b41993f84bc1ff436ba3219f9799c7e18", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6dcf8f329328d99323f5d1ecfe75597b41993f84bc1ff436ba3219f9799c7e18", kill_on_drop: false }`
[INFO] [stdout] 6dcf8f329328d99323f5d1ecfe75597b41993f84bc1ff436ba3219f9799c7e18
