[INFO] cloning repository https://github.com/HegelXu/filestor-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/HegelXu/filestor-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHegelXu%2Ffilestor-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHegelXu%2Ffilestor-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8131d1d168fe47ff3617de024f2049db1cafdcf0
[INFO] testing HegelXu/filestor-rs against 1.97.0-beta.6 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHegelXu%2Ffilestor-rs" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] [stderr] Updating files:  64% (1972/3075)
Updating files:  65% (1999/3075)
Updating files:  66% (2030/3075)
Updating files:  67% (2061/3075)
Updating files:  68% (2091/3075)
Updating files:  69% (2122/3075)
Updating files:  70% (2153/3075)
Updating files:  71% (2184/3075)
Updating files:  72% (2214/3075)
Updating files:  73% (2245/3075)
Updating files:  73% (2247/3075)
Updating files:  74% (2276/3075)
Updating files:  75% (2307/3075)
Updating files:  76% (2337/3075)
Updating files:  77% (2368/3075)
Updating files:  78% (2399/3075)
Updating files:  79% (2430/3075)
Updating files:  80% (2460/3075)
Updating files:  81% (2491/3075)
Updating files:  82% (2522/3075)
Updating files:  82% (2533/3075)
Updating files:  83% (2553/3075)
Updating files:  84% (2583/3075)
Updating files:  85% (2614/3075)
Updating files:  85% (2641/3075)
Updating files:  86% (2645/3075)
Updating files:  87% (2676/3075)
Updating files:  88% (2706/3075)
Updating files:  89% (2737/3075)
Updating files:  89% (2748/3075)
Updating files:  90% (2768/3075)
Updating files:  91% (2799/3075)
Updating files:  92% (2829/3075)
Updating files:  93% (2860/3075)
Updating files:  94% (2891/3075)
Updating files:  95% (2922/3075)
Updating files:  96% (2952/3075)
Updating files:  97% (2983/3075)
Updating files:  98% (3014/3075)
Updating files:  99% (3045/3075)
Updating files: 100% (3075/3075)
Updating files: 100% (3075/3075), done.
[INFO] started tweaking git repo https://github.com/HegelXu/filestor-rs
[INFO] finished tweaking git repo https://github.com/HegelXu/filestor-rs
[INFO] tweaked toml for git repo https://github.com/HegelXu/filestor-rs written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/HegelXu/filestor-rs on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/HegelXu/filestor-rs already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tokio-tungstenite v0.17.2
[INFO] [stderr]   Downloaded rustls-pemfile v0.2.1
[INFO] [stderr]   Downloaded warp v0.3.3
[INFO] [stderr]   Downloaded tungstenite v0.17.3
[INFO] [stderr]   Downloaded tokio-stream v0.1.11
[INFO] [stderr]   Downloaded multipart v0.18.0
[INFO] [stderr]   Downloaded hyper v0.14.23
[INFO] [stderr]   Downloaded tokio-amqp v2.0.0
[INFO] [stderr]   Downloaded tokio-reactor-trait v1.1.0
[INFO] [stderr]   Downloaded reactor-trait v1.1.0
[INFO] [stderr]   Downloaded tokio-executor-trait v2.1.0
[INFO] [stderr]   Downloaded executor-trait v2.1.0
[INFO] [stderr]   Downloaded pinky-swear v6.1.0
[INFO] [stderr]   Downloaded async-reactor-trait v1.1.0
[INFO] [stderr]   Downloaded async-trait v0.1.63
[INFO] [stderr]   Downloaded headers v0.3.8
[INFO] [stderr]   Downloaded spin v0.9.4
[INFO] [stderr]   Downloaded polling v2.5.2
[INFO] [stderr]   Downloaded h2 v0.3.15
[INFO] [stderr]   Downloaded async-global-executor-trait v2.1.0
[INFO] [stderr]   Downloaded async-global-executor v2.3.1
[INFO] [stderr]   Downloaded lapin v2.1.1
[INFO] [stderr]   Downloaded amq-protocol-tcp v7.0.1
[INFO] [stderr]   Downloaded rustls-connector v0.16.1
[INFO] [stderr]   Downloaded amq-protocol v7.0.1
[INFO] [stderr]   Downloaded amq-protocol-uri v7.0.1
[INFO] [stderr]   Downloaded amq-protocol-types v7.0.1
[INFO] [stderr]   Downloaded tcp-stream v0.24.4
[INFO] [stderr]   Downloaded rustls-pemfile v1.0.2
[INFO] [stderr]   Downloaded tokio v1.24.2
[INFO] [stderr]   Downloaded rustls-native-certs v0.6.2
[INFO] [stderr]   Downloaded security-framework v2.8.1
[INFO] [stderr]   Downloaded security-framework-sys v2.8.0
[INFO] [stderr]   Downloaded p12 v0.6.3
[INFO] [stderr]   Downloaded yasna v0.5.1
[INFO] [stderr]   Downloaded rc2 v0.8.1
[INFO] [stderr]   Downloaded cipher v0.4.3
[INFO] [stderr]   Downloaded block-padding v0.3.2
[INFO] [stderr]   Downloaded des v0.8.1
[INFO] [stderr]   Downloaded unicode-segmentation v1.10.0
[INFO] [stderr]   Downloaded time v0.3.17
[INFO] [stderr]   Downloaded serde-xml-rs v0.5.1
[INFO] [stderr]   Downloaded rust-s3 v0.32.3
[INFO] [stderr]   Downloaded time-macros v0.2.6
[INFO] [stderr]   Downloaded reqwest v0.11.14
[INFO] [stderr]   Downloaded wasm-streams v0.2.3
[INFO] [stderr]   Downloaded ipnet v2.7.1
[INFO] [stderr]   Downloaded minidom v0.15.1
[INFO] [stderr]   Downloaded smartstring v0.2.10
[INFO] [stderr]   Downloaded aws-creds v0.30.0
[INFO] [stderr]   Downloaded rxml_validation v0.8.2
[INFO] [stderr]   Downloaded encoding_rs v0.8.31
[INFO] [stderr]   Downloaded rxml v0.8.2
[INFO] [stderr]   Downloaded maybe-async v0.2.6
[INFO] [stderr]   Downloaded aws-region v0.25.1
[INFO] [stderr]   Downloaded attohttpc v0.19.1
[INFO] [stderr]   Downloaded wildmatch v2.1.1
[INFO] [stderr]   Downloaded named_pipe v0.4.1
[INFO] [stderr]   Downloaded bytecheck v0.6.9
[INFO] [stderr]   Downloaded saturating v0.1.0
[INFO] [stderr]   Downloaded rkyv v0.7.39
[INFO] [stderr]   Downloaded subprocess v0.2.9
[INFO] [stderr]   Downloaded rkyv_derive v0.7.39
[INFO] [stderr]   Downloaded rend v0.3.6
[INFO] [stderr]   Downloaded bytecheck_derive v0.6.9
[INFO] [stderr]   Downloaded mysql v23.0.1
[INFO] [stderr]   Downloaded mysql_common v0.29.2
[INFO] [stderr]   Downloaded rust_decimal v1.28.0
[INFO] [stderr]   Downloaded lexical-parse-integer v0.8.6
[INFO] [stderr]   Downloaded frunk v0.4.1
[INFO] [stderr]   Downloaded lexical v6.1.1
[INFO] [stderr]   Downloaded lexical-write-integer v0.8.5
[INFO] [stderr]   Downloaded frunk_proc_macros_impl v0.1.1
[INFO] [stderr]   Downloaded frunk_derives v0.4.1
[INFO] [stderr]   Downloaded cmake v0.1.49
[INFO] [stderr]   Downloaded lexical-parse-float v0.8.5
[INFO] [stderr]   Downloaded frunk_proc_macros v0.1.1
[INFO] [stderr]   Downloaded frunk_proc_macro_helpers v0.1.1
[INFO] [stderr]   Downloaded lexical-core v0.8.5
[INFO] [stderr]   Downloaded lexical-write-float v0.8.5
[INFO] [stderr]   Downloaded frunk_core v0.4.1
[INFO] [stderr]   Downloaded lexical-util v0.8.5
[INFO] [stderr]   Downloaded libz-sys v1.1.8
[INFO] [stderr]   Downloaded bigdecimal v0.3.0
[INFO] [stderr]   Downloaded lru v0.8.1
[INFO] [stderr]   Downloaded io-enum v1.0.2
[INFO] [stderr]   Downloaded crossbeam v0.8.2
[INFO] [stderr]   Downloaded deadpool-lapin v0.10.0
[INFO] [stderr]   Downloaded deadpool v0.9.5
[INFO] [stderr]   Downloaded deadpool-runtime v0.1.2
[INFO] [stderr]   Downloaded retain_mut v0.1.9
[INFO] [stderr]   Downloaded cxxbridge-flags v1.0.88
[INFO] [stderr]   Downloaded cxx-build v1.0.88
[INFO] [stderr]   Downloaded cxxbridge-macro v1.0.88
[INFO] [stderr]   Downloaded bytes-utils v0.1.3
[INFO] [stderr]   Downloaded aws-types v0.54.1
[INFO] [stderr]   Downloaded aws-sdk-s3 v0.24.0
[INFO] [stderr]   Downloaded aws-smithy-types v0.54.1
[INFO] [stderr]   Downloaded aws-smithy-eventstream v0.54.1
[INFO] [stderr]   Downloaded roxmltree v0.14.1
[INFO] [stderr]   Downloaded cxx v1.0.88
[INFO] [stderr]   Downloaded aws-smithy-http v0.54.1
[INFO] [stderr]   Downloaded aws-smithy-client v0.54.1
[INFO] [stderr]   Downloaded hyper-rustls v0.23.2
[INFO] [stderr]   Downloaded tokio-rustls v0.23.4
[INFO] [stderr]   Downloaded aws-smithy-protocol-test v0.54.1
[INFO] [stderr]   Downloaded output_vt100 v0.1.3
[INFO] [stderr]   Downloaded extend v0.1.2
[INFO] [stderr]   Downloaded pretty_assertions v1.3.0
[INFO] [stderr]   Downloaded ctor v0.1.26
[INFO] [stderr]   Downloaded assert-json-diff v1.1.0
[INFO] [stderr]   Downloaded aws-smithy-http-tower v0.54.1
[INFO] [stderr]   Downloaded crc32c v0.6.3
[INFO] [stderr]   Downloaded aws-smithy-xml v0.54.1
[INFO] [stderr]   Downloaded aws-endpoint v0.54.1
[INFO] [stderr]   Downloaded aws-smithy-async v0.54.1
[INFO] [stderr]   Downloaded aws-sig-auth v0.54.1
[INFO] [stderr]   Downloaded aws-credential-types v0.54.1
[INFO] [stderr]   Downloaded aws-smithy-checksums v0.54.1
[INFO] [stderr]   Downloaded md-5 v0.10.5
[INFO] [stderr]   Downloaded aws-smithy-query v0.54.1
[INFO] [stderr]   Downloaded aws-smithy-json v0.54.1
[INFO] [stderr]   Downloaded aws-sigv4 v0.54.1
[INFO] [stderr]   Downloaded aws-config v0.54.1
[INFO] [stderr]   Downloaded aws-sdk-sts v0.24.0
[INFO] [stderr]   Downloaded aws-http v0.54.1
[INFO] [stderr]   Downloaded aws-sdk-sso v0.24.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] cc8b0a34f5eceb2c87b557306fd882a2d7ba9ee7e8d6c18dc795309adfd5e880
[INFO] running `Command { std: "docker" "start" "cc8b0a34f5eceb2c87b557306fd882a2d7ba9ee7e8d6c18dc795309adfd5e880", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cc8b0a34f5eceb2c87b557306fd882a2d7ba9ee7e8d6c18dc795309adfd5e880", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "cc8b0a34f5eceb2c87b557306fd882a2d7ba9ee7e8d6c18dc795309adfd5e880" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cc8b0a34f5eceb2c87b557306fd882a2d7ba9ee7e8d6c18dc795309adfd5e880", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "cc8b0a34f5eceb2c87b557306fd882a2d7ba9ee7e8d6c18dc795309adfd5e880" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.50
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling once_cell v1.17.0
[INFO] [stderr]    Compiling bytes v1.3.0
[INFO] [stderr]    Compiling cc v1.0.78
[INFO] [stderr]    Compiling futures-core v0.3.25
[INFO] [stderr]    Compiling smallvec v1.10.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.6
[INFO] [stderr]    Compiling futures-io v0.3.25
[INFO] [stderr]    Compiling tokio v1.24.2
[INFO] [stderr]    Compiling typenum v1.16.0
[INFO] [stderr]    Compiling generic-array v0.14.6
[INFO] [stderr]    Compiling futures-sink v0.3.25
[INFO] [stderr]    Compiling ahash v0.7.6
[INFO] [stderr]    Compiling futures-channel v0.3.25
[INFO] [stderr]    Compiling futures-task v0.3.25
[INFO] [stderr]    Compiling tracing-core v0.1.30
[INFO] [stderr]    Compiling futures-util v0.3.25
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling mio v0.8.5
[INFO] [stderr]    Compiling subtle v2.4.1
[INFO] [stderr]    Compiling serde_json v1.0.91
[INFO] [stderr]    Compiling openssl-probe v0.1.5
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling http v0.2.8
[INFO] [stderr]    Compiling cpufeatures v0.2.5
[INFO] [stderr]    Compiling time-core v0.1.0
[INFO] [stderr]    Compiling fastrand v1.8.0
[INFO] [stderr]    Compiling spin v0.5.2
[INFO] [stderr]    Compiling time-macros v0.2.6
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling untrusted v0.7.1
[INFO] [stderr]    Compiling base64 v0.21.0
[INFO] [stderr]    Compiling outref v0.1.0
[INFO] [stderr]    Compiling tinyvec_macros v0.1.0
[INFO] [stderr]    Compiling rustls v0.20.8
[INFO] [stderr]    Compiling simd-abstraction v0.7.1
[INFO] [stderr]    Compiling tinyvec v1.6.0
[INFO] [stderr]    Compiling want v0.3.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.14
[INFO] [stderr]    Compiling semver v1.0.16
[INFO] [stderr]    Compiling aho-corasick v0.7.20
[INFO] [stderr]    Compiling rustls-pemfile v1.0.2
[INFO] [stderr]    Compiling base64-simd v0.7.0
[INFO] [stderr]    Compiling rustls-native-certs v0.6.2
[INFO] [stderr]    Compiling quote v1.0.23
[INFO] [stderr]    Compiling syn v1.0.107
[INFO] [stderr]    Compiling http-body v0.4.5
[INFO] [stderr]    Compiling bytes-utils v0.1.3
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling async-trait v0.1.63
[INFO] [stderr]    Compiling indexmap v1.9.2
[INFO] [stderr]    Compiling xmlparser v0.13.5
[INFO] [stderr]    Compiling yansi v0.5.1
[INFO] [stderr]    Compiling parking v2.0.0
[INFO] [stderr]    Compiling waker-fn v1.1.0
[INFO] [stderr]    Compiling concurrent-queue v2.1.0
[INFO] [stderr]    Compiling futures-lite v1.12.0
[INFO] [stderr]    Compiling native-tls v0.2.11
[INFO] [stderr]    Compiling regex v1.7.1
[INFO] [stderr]    Compiling pretty_assertions v1.3.0
[INFO] [stderr]    Compiling aws-types v0.54.1
[INFO] [stderr]    Compiling polling v2.5.2
[INFO] [stderr]    Compiling zeroize v1.5.7
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.3
[INFO] [stderr]    Compiling block-padding v0.3.2
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]    Compiling openssl-sys v0.9.80
[INFO] [stderr]    Compiling roxmltree v0.14.1
[INFO] [stderr]    Compiling inout v0.1.3
[INFO] [stderr]    Compiling digest v0.10.6
[INFO] [stderr]    Compiling clang-sys v1.4.0
[INFO] [stderr]    Compiling cipher v0.4.3
[INFO] [stderr]    Compiling lexical-util v0.8.5
[INFO] [stderr]    Compiling async-io v1.12.0
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling unicode-normalization v0.1.22
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling sha1 v0.10.5
[INFO] [stderr]    Compiling sha2 v0.10.6
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling unicase v2.6.0
[INFO] [stderr]    Compiling openssl v0.10.45
[INFO] [stderr]    Compiling async-task v4.3.0
[INFO] [stderr]    Compiling yasna v0.5.1
[INFO] [stderr]    Compiling rc2 v0.8.1
[INFO] [stderr]    Compiling cbc v0.1.2
[INFO] [stderr]    Compiling des v0.8.1
[INFO] [stderr]    Compiling frunk_core v0.4.1
[INFO] [stderr]    Compiling cookie-factory v0.3.2
[INFO] [stderr]    Compiling proc-macro-hack v0.5.20+deprecated
[INFO] [stderr]    Compiling async-channel v1.8.0
[INFO] [stderr]    Compiling libloading v0.7.4
[INFO] [stderr]    Compiling idna v0.3.0
[INFO] [stderr]    Compiling doc-comment v0.3.3
[INFO] [stderr]    Compiling async-lock v2.6.0
[INFO] [stderr]    Compiling regex-syntax v0.6.28
[INFO] [stderr]    Compiling bindgen v0.59.2
[INFO] [stderr]    Compiling p12 v0.6.3
[INFO] [stderr]    Compiling atomic-waker v1.1.0
[INFO] [stderr]    Compiling async-executor v1.5.0
[INFO] [stderr]    Compiling blocking v1.3.0
[INFO] [stderr]    Compiling url v2.3.1
[INFO] [stderr]    Compiling lexical-parse-integer v0.8.6
[INFO] [stderr]    Compiling lexical-write-integer v0.8.5
[INFO] [stderr]    Compiling libz-sys v1.1.8
[INFO] [stderr]    Compiling spin v0.9.4
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.13
[INFO] [stderr]    Compiling num-bigint v0.4.3
[INFO] [stderr]    Compiling amq-protocol v7.0.1
[INFO] [stderr]    Compiling byteorder v1.4.3
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]    Compiling shlex v1.1.0
[INFO] [stderr]    Compiling lexical-parse-float v0.8.5
[INFO] [stderr]    Compiling lexical-write-float v0.8.5
[INFO] [stderr]    Compiling async-global-executor v2.3.1
[INFO] [stderr]    Compiling mime_guess v2.0.4
[INFO] [stderr]    Compiling crc32c v0.6.3
[INFO] [stderr]    Compiling cmake v0.1.49
[INFO] [stderr]    Compiling subprocess v0.2.9
[INFO] [stderr]    Compiling lapin v2.1.1
[INFO] [stderr]    Compiling crossbeam-queue v0.3.8
[INFO] [stderr]    Compiling dlv-list v0.3.0
[INFO] [stderr]    Compiling tap v1.0.1
[INFO] [stderr]    Compiling rust_decimal v1.28.0
[INFO] [stderr]    Compiling encoding_rs v0.8.31
[INFO] [stderr]    Compiling lexical-core v0.8.5
[INFO] [stderr]    Compiling ordered-multimap v0.4.3
[INFO] [stderr]    Compiling wyz v0.5.1
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling sha-1 v0.10.1
[INFO] [stderr]    Compiling aws-smithy-xml v0.54.1
[INFO] [stderr]    Compiling smartstring v0.2.10
[INFO] [stderr]    Compiling dirs-sys v0.3.7
[INFO] [stderr]    Compiling wildmatch v2.1.1
[INFO] [stderr]    Compiling arrayvec v0.7.2
[INFO] [stderr]    Compiling unicode-segmentation v1.10.0
[INFO] [stderr]    Compiling safemem v0.3.3
[INFO] [stderr]    Compiling funty v2.0.0
[INFO] [stderr]    Compiling urlencoding v2.1.2
[INFO] [stderr]    Compiling io-enum v1.0.2
[INFO] [stderr]    Compiling rxml_validation v0.8.2
[INFO] [stderr]    Compiling unicode-width v0.1.10
[INFO] [stderr]    Compiling remove_dir_all v0.5.3
[INFO] [stderr]    Compiling xml-rs v0.8.4
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling tempfile v3.3.0
[INFO] [stderr]    Compiling bitvec v1.0.1
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]    Compiling webpki v0.22.0
[INFO] [stderr]    Compiling sct v0.7.0
[INFO] [stderr]    Compiling buf_redux v0.8.4
[INFO] [stderr]    Compiling rust-ini v0.18.0
[INFO] [stderr]    Compiling bigdecimal v0.3.0
[INFO] [stderr]    Compiling dirs v4.0.0
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling frunk_proc_macro_helpers v0.1.1
[INFO] [stderr]    Compiling derive_utils v0.12.0
[INFO] [stderr]    Compiling crossbeam-deque v0.8.2
[INFO] [stderr]    Compiling flate2 v1.0.25
[INFO] [stderr]    Compiling lexical v6.1.1
[INFO] [stderr]    Compiling md-5 v0.10.5
[INFO] [stderr]    Compiling crossbeam-channel v0.5.6
[INFO] [stderr]    Compiling headers-core v0.2.0
[INFO] [stderr]    Compiling twoway v0.1.8
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling ipnet v2.7.1
[INFO] [stderr]    Compiling saturating v0.1.0
[INFO] [stderr]    Compiling retain_mut v0.1.9
[INFO] [stderr]    Compiling mysql v23.0.1
[INFO] [stderr]    Compiling uuid v1.2.2
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stderr]    Compiling headers v0.3.8
[INFO] [stderr]    Compiling multipart v0.18.0
[INFO] [stderr]    Compiling twox-hash v1.6.3
[INFO] [stderr]    Compiling crossbeam v0.8.2
[INFO] [stderr]    Compiling rustls-pemfile v0.2.1
[INFO] [stderr]    Compiling lru v0.8.1
[INFO] [stderr]    Compiling combine v4.6.6
[INFO] [stderr]    Compiling time v0.1.45
[INFO] [stderr]    Compiling bufstream v0.1.4
[INFO] [stderr]    Compiling sha1_smol v1.0.0
[INFO] [stderr]    Compiling md5 v0.7.0
[INFO] [stderr]    Compiling chrono v0.4.23
[INFO] [stderr]    Compiling base16ct v0.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.152
[INFO] [stderr]    Compiling tokio-macros v1.8.2
[INFO] [stderr]    Compiling tracing-attributes v0.1.23
[INFO] [stderr]    Compiling futures-macro v0.3.25
[INFO] [stderr]    Compiling thiserror-impl v1.0.38
[INFO] [stderr]    Compiling pin-project-internal v1.0.12
[INFO] [stderr]    Compiling extend v0.1.2
[INFO] [stderr]    Compiling openssl-macros v0.1.0
[INFO] [stderr]    Compiling frunk_proc_macros_impl v0.1.1
[INFO] [stderr]    Compiling frunk_derives v0.4.1
[INFO] [stderr]    Compiling frunk_proc_macros v0.1.1
[INFO] [stderr]    Compiling rustls-connector v0.16.1
[INFO] [stderr]    Compiling frunk v0.4.1
[INFO] [stderr]    Compiling tcp-stream v0.24.4
[INFO] [stderr]    Compiling structopt-derive v0.4.18
[INFO] [stderr]    Compiling pin-project v1.0.12
[INFO] [stderr]    Compiling reactor-trait v1.1.0
[INFO] [stderr]    Compiling executor-trait v2.1.0
[INFO] [stderr]    Compiling flume v0.10.14
[INFO] [stderr]    Compiling async-reactor-trait v1.1.0
[INFO] [stderr]    Compiling thiserror v1.0.38
[INFO] [stderr]    Compiling async-global-executor-trait v2.1.0
[INFO] [stderr]    Compiling tungstenite v0.17.3
[INFO] [stderr]    Compiling aws-region v0.25.1
[INFO] [stderr]    Compiling maybe-async v0.2.6
[INFO] [stderr]    Compiling tracing v0.1.37
[INFO] [stderr]    Compiling pinky-swear v6.1.0
[INFO] [stderr]    Compiling structopt v0.3.26
[INFO] [stderr]    Compiling serde v1.0.152
[INFO] [stderr]    Compiling mysql_common v0.29.2
[INFO] [stderr]    Compiling futures-executor v0.3.25
[INFO] [stderr]    Compiling futures v0.3.25
[INFO] [stderr]    Compiling tokio-util v0.7.4
[INFO] [stderr]    Compiling tokio-stream v0.1.11
[INFO] [stderr]    Compiling tokio-rustls v0.23.4
[INFO] [stderr]    Compiling tower v0.4.13
[INFO] [stderr]    Compiling tokio-native-tls v0.3.0
[INFO] [stderr]    Compiling deadpool-runtime v0.1.2
[INFO] [stderr]    Compiling rxml v0.8.2
[INFO] [stderr]    Compiling tokio-executor-trait v2.1.0
[INFO] [stderr]    Compiling tokio-tungstenite v0.17.2
[INFO] [stderr]    Compiling deadpool v0.9.5
[INFO] [stderr]    Compiling redis v0.22.3
[INFO] [stderr]    Compiling aws-smithy-async v0.54.1
[INFO] [stderr]    Compiling tokio-reactor-trait v1.1.0
[INFO] [stderr]    Compiling h2 v0.3.15
[INFO] [stderr]    Compiling minidom v0.15.1
[INFO] [stderr]    Compiling time v0.3.17
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling serde-xml-rs v0.5.1
[INFO] [stderr]    Compiling assert-json-diff v1.1.0
[INFO] [stderr]    Compiling amq-protocol-types v7.0.1
[INFO] [stderr]    Compiling attohttpc v0.19.1
[INFO] [stderr]    Compiling aws-smithy-protocol-test v0.54.1
[INFO] [stderr]    Compiling amq-protocol-uri v7.0.1
[INFO] [stderr]    Compiling amq-protocol-tcp v7.0.1
[INFO] [stderr]    Compiling aws-smithy-types v0.54.1
[INFO] [stderr]    Compiling aws-creds v0.30.0
[INFO] [stderr]    Compiling aws-smithy-eventstream v0.54.1
[INFO] [stderr]    Compiling aws-credential-types v0.54.1
[INFO] [stderr]    Compiling aws-smithy-json v0.54.1
[INFO] [stderr]    Compiling aws-smithy-query v0.54.1
[INFO] [stderr]    Compiling hyper v0.14.23
[INFO] [stderr]    Compiling tokio-amqp v2.0.0
[INFO] [stderr]    Compiling deadpool-lapin v0.10.0
[INFO] [stderr]    Compiling aws-smithy-http v0.54.1
[INFO] [stderr]    Compiling hyper-rustls v0.23.2
[INFO] [stderr]    Compiling hyper-tls v0.5.0
[INFO] [stderr]    Compiling warp v0.3.3
[INFO] [stderr]    Compiling reqwest v0.11.14
[INFO] [stderr]    Compiling aws-smithy-http-tower v0.54.1
[INFO] [stderr]    Compiling aws-sigv4 v0.54.1
[INFO] [stderr]    Compiling aws-smithy-checksums v0.54.1
[INFO] [stderr]    Compiling aws-smithy-client v0.54.1
[INFO] [stderr]    Compiling rust-s3 v0.32.3
[INFO] [stderr]    Compiling aws-http v0.54.1
[INFO] [stderr]    Compiling aws-sig-auth v0.54.1
[INFO] [stderr]    Compiling aws-endpoint v0.54.1
[INFO] [stderr]    Compiling aws-sdk-sts v0.24.0
[INFO] [stderr]    Compiling aws-sdk-sso v0.24.0
[INFO] [stderr]    Compiling aws-sdk-s3 v0.24.0
[INFO] [stderr]    Compiling aws-config v0.54.1
[INFO] [stderr]    Compiling filestore-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `StreamExt`
[INFO] [stdout]  --> src/mq/consumer.rs:2:21
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::{join, StreamExt};
[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 imports: `BasicProperties`, `options::*`, and `types::FieldTable`
[INFO] [stdout]  --> src/mq/consumer.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | use lapin::{options::*, types::FieldTable, BasicProperties, ConnectionProperties};
[INFO] [stdout]   |             ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::convert::Infallible`
[INFO] [stdout]  --> src/mq/consumer.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::convert::Infallible;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_amqp::*`
[INFO] [stdout]  --> src/mq/consumer.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio_amqp::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Manager` and `PoolError`
[INFO] [stdout]  --> src/mq/producer.rs:1:22
[INFO] [stdout]   |
[INFO] [stdout] 1 | use deadpool_lapin::{Manager, Pool, PoolError};
[INFO] [stdout]   |                      ^^^^^^^        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `join`
[INFO] [stdout]  --> src/mq/producer.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::{join, StreamExt};
[INFO] [stdout]   |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ConnectionProperties`
[INFO] [stdout]  --> src/mq/producer.rs:3:61
[INFO] [stdout]   |
[INFO] [stdout] 3 | use lapin::{options::*, types::FieldTable, BasicProperties, ConnectionProperties};
[INFO] [stdout]   |                                                             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::result::Result as StdResult`
[INFO] [stdout]  --> src/mq/producer.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::result::Result as StdResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/mq/producer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error as ThisError`
[INFO] [stdout]  --> src/mq/producer.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use thiserror::Error as ThisError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_amqp::*`
[INFO] [stdout]  --> src/mq/producer.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio_amqp::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Rejection`
[INFO] [stdout]  --> src/mq/producer.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use warp::{Filter, Rejection, Reply};
[INFO] [stdout]   |                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `operation::PutObject`
[INFO] [stdout]  --> src/store/aws_s3/aws_s3_conn.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | use aws_sdk_s3::{operation::PutObject, Client};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cache/redis.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let mut con = redis::Client::open(redis_conn_url)
[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]   --> src/db/mysql/conn.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let mut conn = Conn::new(url).expect("Failed to connect to mysql");
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row`
[INFO] [stdout]   --> src/db/mysql/conn.rs:33:26
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub(crate) fn parse_rows(row: Row) {
[INFO] [stdout]    |                          ^^^ help: if this is intentional, prefix it with an underscore: `_row`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pool`
[INFO] [stdout]   --> src/mq/consumer.rs:30:28
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub async fn start_consume(pool:Pool) ->Result<()> {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `objName`
[INFO] [stdout]   --> src/store/aws_s3/aws_s3_conn.rs:23:27
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub async fn download_URL(objName: String) -> String {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_objName`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `REDIS_HOST` is never used
[INFO] [stdout]  --> src/cache/redis.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | const REDIS_HOST: &str = "127.0.0.1:6379/";
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `REDIS_PASS` is never used
[INFO] [stdout]  --> src/cache/redis.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const REDIS_PASS: &str = "testupload";
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `redis_pool` is never used
[INFO] [stdout]   --> src/cache/redis.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn redis_pool() -> POOL {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_rows` is never used
[INFO] [stdout]   --> src/db/mysql/conn.rs:33:15
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub(crate) fn parse_rows(row: Row) {
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `FileHash`, `CurLocation`, `DestLocation`, and `DestStoreType` are never read
[INFO] [stdout]   --> src/mq/mod.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct TransferData  {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout]  7 |     FileHash      :String,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]  8 |     CurLocation   :String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]  9 |     DestLocation  :String,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 10 |     DestStoreType :cmn::store::StoreType,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rmq_listen` is never used
[INFO] [stdout]   --> src/mq/consumer.rs:37:10
[INFO] [stdout]    |
[INFO] [stdout] 37 | async fn rmq_listen(pool: Pool) -> Result<()> {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `t_main` is never used
[INFO] [stdout]   --> src/mq/consumer.rs:53:10
[INFO] [stdout]    |
[INFO] [stdout] 53 | async fn t_main() -> Result<()> {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `health_handler` is never used
[INFO] [stdout]   --> src/mq/consumer.rs:79:10
[INFO] [stdout]    |
[INFO] [stdout] 79 | async fn health_handler() -> WebResult<impl Reply> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `region`, `bucket`, `filename`, `key`, and `verbose` are never read
[INFO] [stdout]   --> src/store/aws_s3/mod.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | struct Opt {
[INFO] [stdout]    |        --- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout]  7 |     region: Option<String>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |     bucket: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     filename: String,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     key: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     verbose: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Opt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileHash` should have a snake case name
[INFO] [stdout]   --> src/db/file.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub FileHash: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileName` should have a snake case name
[INFO] [stdout]   --> src/db/file.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub FileName: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileSize` should have a snake case name
[INFO] [stdout]   --> src/db/file.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub FileSize: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileAddr` should have a snake case name
[INFO] [stdout]   --> src/db/file.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub FileAddr: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Username` should have a snake case name
[INFO] [stdout]  --> src/db/user.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub Username: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `username`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Email` should have a snake case name
[INFO] [stdout]  --> src/db/user.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub Email: String,
[INFO] [stdout]   |         ^^^^^ help: convert the identifier to snake case: `email`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Phone` should have a snake case name
[INFO] [stdout]  --> src/db/user.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub Phone: String,
[INFO] [stdout]   |         ^^^^^ help: convert the identifier to snake case: `phone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `SignupAt` should have a snake case name
[INFO] [stdout]   --> src/db/user.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub SignupAt: String,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `signup_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `LastActiveAt` should have a snake case name
[INFO] [stdout]   --> src/db/user.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub LastActiveAt: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: convert the identifier to snake case: `last_active_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Status` should have a snake case name
[INFO] [stdout]   --> src/db/user.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub Status: isize,
[INFO] [stdout]    |         ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `signupAt` should have a snake case name
[INFO] [stdout]   --> src/db/user.rs:79:39
[INFO] [stdout]    |
[INFO] [stdout] 79 |             |(username, email, phone, signupAt, lastActiveAt, status)| User {
[INFO] [stdout]    |                                       ^^^^^^^^ help: convert the identifier to snake case: `signup_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `lastActiveAt` should have a snake case name
[INFO] [stdout]   --> src/db/user.rs:79:49
[INFO] [stdout]    |
[INFO] [stdout] 79 |             |(username, email, phone, signupAt, lastActiveAt, status)| User {
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^ help: convert the identifier to snake case: `last_active_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `UserName` should have a snake case name
[INFO] [stdout]  --> src/db/userfile.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub UserName: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `user_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileHash` should have a snake case name
[INFO] [stdout]  --> src/db/userfile.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub FileHash: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileName` should have a snake case name
[INFO] [stdout]  --> src/db/userfile.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub FileName: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileSize` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub FileSize: i64,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `UploadAt` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub UploadAt: String,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `LastUpdated` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub LastUpdated: String,
[INFO] [stdout]    |         ^^^^^^^^^^^ help: convert the identifier to snake case: `last_updated`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileHash` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:51:25
[INFO] [stdout]    |
[INFO] [stdout] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]    |                         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileName` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:51:35
[INFO] [stdout]    |
[INFO] [stdout] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]    |                                   ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileSize` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:51:45
[INFO] [stdout]    |
[INFO] [stdout] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]    |                                             ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `uploadAt` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:51:55
[INFO] [stdout]    |
[INFO] [stdout] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]    |                                                       ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `uastUpdated` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:51:65
[INFO] [stdout]    |
[INFO] [stdout] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^ help: convert the identifier to snake case: `uast_updated`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileHash` should have a snake case name
[INFO] [stdout]    --> src/db/userfile.rs:115:25
[INFO] [stdout]     |
[INFO] [stdout] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]     |                         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileName` should have a snake case name
[INFO] [stdout]    --> src/db/userfile.rs:115:35
[INFO] [stdout]     |
[INFO] [stdout] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]     |                                   ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileSize` should have a snake case name
[INFO] [stdout]    --> src/db/userfile.rs:115:45
[INFO] [stdout]     |
[INFO] [stdout] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]     |                                             ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `uploadAt` should have a snake case name
[INFO] [stdout]    --> src/db/userfile.rs:115:55
[INFO] [stdout]     |
[INFO] [stdout] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]     |                                                       ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `uastUpdated` should have a snake case name
[INFO] [stdout]    --> src/db/userfile.rs:115:65
[INFO] [stdout]     |
[INFO] [stdout] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^ help: convert the identifier to snake case: `uast_updated`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `DBConn` should have a snake case name
[INFO] [stdout]   --> src/db/mysql/conn.rs:29:15
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(crate) fn DBConn() -> MYDB {
[INFO] [stdout]    |               ^^^^^^ help: convert the identifier to snake case: `dbconn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileSha1` should have a snake case name
[INFO] [stdout]  --> src/meta/filemeta.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub FileSha1: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_sha1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileName` should have a snake case name
[INFO] [stdout]  --> src/meta/filemeta.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub FileName: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileSize` should have a snake case name
[INFO] [stdout]   --> src/meta/filemeta.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub FileSize: u64,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Location` should have a snake case name
[INFO] [stdout]   --> src/meta/filemeta.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub Location: String,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `location`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `UploadAt` should have a snake case name
[INFO] [stdout]   --> src/meta/filemeta.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub UploadAt: String,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileHash` should have a snake case name
[INFO] [stdout]  --> src/mq/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     FileHash      :String,
[INFO] [stdout]   |     ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `CurLocation` should have a snake case name
[INFO] [stdout]  --> src/mq/mod.rs:8:2
[INFO] [stdout]   |
[INFO] [stdout] 8 |     CurLocation   :String,
[INFO] [stdout]   |     ^^^^^^^^^^^ help: convert the identifier to snake case: `cur_location`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `DestLocation` should have a snake case name
[INFO] [stdout]  --> src/mq/mod.rs:9:2
[INFO] [stdout]   |
[INFO] [stdout] 9 |     DestLocation  :String,
[INFO] [stdout]   |     ^^^^^^^^^^^^ help: convert the identifier to snake case: `dest_location`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `DestStoreType` should have a snake case name
[INFO] [stdout]   --> src/mq/mod.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |     DestStoreType :cmn::store::StoreType,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to snake case: `dest_store_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `download_URL` should have a snake case name
[INFO] [stdout]   --> src/store/aws_s3/aws_s3_conn.rs:23:14
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub async fn download_URL(objName: String) -> String {
[INFO] [stdout]    |              ^^^^^^^^^^^^ help: convert the identifier to snake case: `download_url`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `objName` should have a snake case name
[INFO] [stdout]   --> src/store/aws_s3/aws_s3_conn.rs:23:27
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub async fn download_URL(objName: String) -> String {
[INFO] [stdout]    |                           ^^^^^^^ help: convert the identifier to snake case: `obj_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `MD5` should have a snake case name
[INFO] [stdout]   --> src/util/util.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn MD5(data: &[u8]) ->String {
[INFO] [stdout]    |        ^^^ help: convert the identifier to snake case: `md5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `file_MD5` should have a snake case name
[INFO] [stdout]   --> src/util/util.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn file_MD5(file: &mut fs::File) ->String {
[INFO] [stdout]    |        ^^^^^^^^ help: convert the identifier to snake case: `file_md5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Code` should have a snake case name
[INFO] [stdout]  --> src/util/resp.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub Code: Option<isize>,
[INFO] [stdout]   |         ^^^^ help: convert the identifier to snake case (notice the capitalization): `code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Msg` should have a snake case name
[INFO] [stdout]  --> src/util/resp.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub Msg: Option<String>,
[INFO] [stdout]   |         ^^^ help: convert the identifier to snake case: `msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Data` should have a snake case name
[INFO] [stdout]  --> src/util/resp.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub Data: Option<serde_json::Value>,
[INFO] [stdout]   |         ^^^^ help: convert the identifier to snake case: `data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `JSONBytes` should have a snake case name
[INFO] [stdout]   --> src/util/resp.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn JSONBytes(& self) -> Vec<u8> {
[INFO] [stdout]    |            ^^^^^^^^^ help: convert the identifier to snake case: `jsonbytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `JSONString` should have a snake case name
[INFO] [stdout]   --> src/util/resp.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub fn JSONString(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^ help: convert the identifier to snake case: `jsonstring`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 56s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: buf_redux v0.8.4, multipart v0.18.0, openssl v0.10.45, redis v0.22.3
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "cc8b0a34f5eceb2c87b557306fd882a2d7ba9ee7e8d6c18dc795309adfd5e880", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "cc8b0a34f5eceb2c87b557306fd882a2d7ba9ee7e8d6c18dc795309adfd5e880" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `StreamExt`
[INFO] [stdout]  --> src/mq/consumer.rs:2:21
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::{join, StreamExt};
[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 imports: `BasicProperties`, `options::*`, and `types::FieldTable`
[INFO] [stdout]  --> src/mq/consumer.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | use lapin::{options::*, types::FieldTable, BasicProperties, ConnectionProperties};
[INFO] [stdout]   |             ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::convert::Infallible`
[INFO] [stdout]  --> src/mq/consumer.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::convert::Infallible;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_amqp::*`
[INFO] [stdout]  --> src/mq/consumer.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio_amqp::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Manager` and `PoolError`
[INFO] [stdout]  --> src/mq/producer.rs:1:22
[INFO] [stdout]   |
[INFO] [stdout] 1 | use deadpool_lapin::{Manager, Pool, PoolError};
[INFO] [stdout]   |                      ^^^^^^^        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `join`
[INFO] [stdout]  --> src/mq/producer.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::{join, StreamExt};
[INFO] [stdout]   |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ConnectionProperties`
[INFO] [stdout]  --> src/mq/producer.rs:3:61
[INFO] [stdout]   |
[INFO] [stdout] 3 | use lapin::{options::*, types::FieldTable, BasicProperties, ConnectionProperties};
[INFO] [stdout]   |                                                             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::result::Result as StdResult`
[INFO] [stdout]  --> src/mq/producer.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::result::Result as StdResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/mq/producer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error as ThisError`
[INFO] [stdout]  --> src/mq/producer.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use thiserror::Error as ThisError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_amqp::*`
[INFO] [stdout]  --> src/mq/producer.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio_amqp::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Rejection`
[INFO] [stdout]  --> src/mq/producer.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use warp::{Filter, Rejection, Reply};
[INFO] [stdout]   |                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `operation::PutObject`
[INFO] [stdout]  --> src/store/aws_s3/aws_s3_conn.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | use aws_sdk_s3::{operation::PutObject, Client};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cache/redis.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let mut con = redis::Client::open(redis_conn_url)
[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]   --> src/db/mysql/conn.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let mut conn = Conn::new(url).expect("Failed to connect to mysql");
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row`
[INFO] [stdout]   --> src/db/mysql/conn.rs:33:26
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub(crate) fn parse_rows(row: Row) {
[INFO] [stdout]    |                          ^^^ help: if this is intentional, prefix it with an underscore: `_row`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pool`
[INFO] [stdout]   --> src/mq/consumer.rs:30:28
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub async fn start_consume(pool:Pool) ->Result<()> {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `objName`
[INFO] [stdout]   --> src/store/aws_s3/aws_s3_conn.rs:23:27
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub async fn download_URL(objName: String) -> String {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_objName`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `REDIS_HOST` is never used
[INFO] [stdout]  --> src/cache/redis.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | const REDIS_HOST: &str = "127.0.0.1:6379/";
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `REDIS_PASS` is never used
[INFO] [stdout]  --> src/cache/redis.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const REDIS_PASS: &str = "testupload";
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `redis_pool` is never used
[INFO] [stdout]   --> src/cache/redis.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn redis_pool() -> POOL {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_rows` is never used
[INFO] [stdout]   --> src/db/mysql/conn.rs:33:15
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub(crate) fn parse_rows(row: Row) {
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `FileHash`, `CurLocation`, `DestLocation`, and `DestStoreType` are never read
[INFO] [stdout]   --> src/mq/mod.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct TransferData  {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout]  7 |     FileHash      :String,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]  8 |     CurLocation   :String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]  9 |     DestLocation  :String,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 10 |     DestStoreType :cmn::store::StoreType,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rmq_listen` is never used
[INFO] [stdout]   --> src/mq/consumer.rs:37:10
[INFO] [stdout]    |
[INFO] [stdout] 37 | async fn rmq_listen(pool: Pool) -> Result<()> {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `t_main` is never used
[INFO] [stdout]   --> src/mq/consumer.rs:53:10
[INFO] [stdout]    |
[INFO] [stdout] 53 | async fn t_main() -> Result<()> {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `health_handler` is never used
[INFO] [stdout]   --> src/mq/consumer.rs:79:10
[INFO] [stdout]    |
[INFO] [stdout] 79 | async fn health_handler() -> WebResult<impl Reply> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `region`, `bucket`, `filename`, `key`, and `verbose` are never read
[INFO] [stdout]   --> src/store/aws_s3/mod.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | struct Opt {
[INFO] [stdout]    |        --- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout]  7 |     region: Option<String>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |     bucket: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     filename: String,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     key: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     verbose: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Opt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileHash` should have a snake case name
[INFO] [stdout]   --> src/db/file.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub FileHash: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileName` should have a snake case name
[INFO] [stdout]   --> src/db/file.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub FileName: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileSize` should have a snake case name
[INFO] [stdout]   --> src/db/file.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub FileSize: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileAddr` should have a snake case name
[INFO] [stdout]   --> src/db/file.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub FileAddr: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Username` should have a snake case name
[INFO] [stdout]  --> src/db/user.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub Username: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `username`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Email` should have a snake case name
[INFO] [stdout]  --> src/db/user.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub Email: String,
[INFO] [stdout]   |         ^^^^^ help: convert the identifier to snake case: `email`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling filestore-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: structure field `Phone` should have a snake case name
[INFO] [stdout]  --> src/db/user.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub Phone: String,
[INFO] [stdout]   |         ^^^^^ help: convert the identifier to snake case: `phone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `SignupAt` should have a snake case name
[INFO] [stdout]   --> src/db/user.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub SignupAt: String,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `signup_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `LastActiveAt` should have a snake case name
[INFO] [stdout]   --> src/db/user.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub LastActiveAt: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: convert the identifier to snake case: `last_active_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Status` should have a snake case name
[INFO] [stdout]   --> src/db/user.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub Status: isize,
[INFO] [stdout]    |         ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `signupAt` should have a snake case name
[INFO] [stdout]   --> src/db/user.rs:79:39
[INFO] [stdout]    |
[INFO] [stdout] 79 |             |(username, email, phone, signupAt, lastActiveAt, status)| User {
[INFO] [stdout]    |                                       ^^^^^^^^ help: convert the identifier to snake case: `signup_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `lastActiveAt` should have a snake case name
[INFO] [stdout]   --> src/db/user.rs:79:49
[INFO] [stdout]    |
[INFO] [stdout] 79 |             |(username, email, phone, signupAt, lastActiveAt, status)| User {
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^ help: convert the identifier to snake case: `last_active_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `UserName` should have a snake case name
[INFO] [stdout]  --> src/db/userfile.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub UserName: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `user_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileHash` should have a snake case name
[INFO] [stdout]  --> src/db/userfile.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub FileHash: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileName` should have a snake case name
[INFO] [stdout]  --> src/db/userfile.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub FileName: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileSize` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub FileSize: i64,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `UploadAt` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub UploadAt: String,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `LastUpdated` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub LastUpdated: String,
[INFO] [stdout]    |         ^^^^^^^^^^^ help: convert the identifier to snake case: `last_updated`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileHash` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:51:25
[INFO] [stdout]    |
[INFO] [stdout] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]    |                         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileName` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:51:35
[INFO] [stdout]    |
[INFO] [stdout] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]    |                                   ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileSize` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:51:45
[INFO] [stdout]    |
[INFO] [stdout] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]    |                                             ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `uploadAt` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:51:55
[INFO] [stdout]    |
[INFO] [stdout] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]    |                                                       ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `uastUpdated` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:51:65
[INFO] [stdout]    |
[INFO] [stdout] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^ help: convert the identifier to snake case: `uast_updated`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileHash` should have a snake case name
[INFO] [stdout]    --> src/db/userfile.rs:115:25
[INFO] [stdout]     |
[INFO] [stdout] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]     |                         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileName` should have a snake case name
[INFO] [stdout]    --> src/db/userfile.rs:115:35
[INFO] [stdout]     |
[INFO] [stdout] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]     |                                   ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileSize` should have a snake case name
[INFO] [stdout]    --> src/db/userfile.rs:115:45
[INFO] [stdout]     |
[INFO] [stdout] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]     |                                             ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `uploadAt` should have a snake case name
[INFO] [stdout]    --> src/db/userfile.rs:115:55
[INFO] [stdout]     |
[INFO] [stdout] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]     |                                                       ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `uastUpdated` should have a snake case name
[INFO] [stdout]    --> src/db/userfile.rs:115:65
[INFO] [stdout]     |
[INFO] [stdout] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^ help: convert the identifier to snake case: `uast_updated`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `DBConn` should have a snake case name
[INFO] [stdout]   --> src/db/mysql/conn.rs:29:15
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(crate) fn DBConn() -> MYDB {
[INFO] [stdout]    |               ^^^^^^ help: convert the identifier to snake case: `dbconn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileSha1` should have a snake case name
[INFO] [stdout]  --> src/meta/filemeta.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub FileSha1: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_sha1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileName` should have a snake case name
[INFO] [stdout]  --> src/meta/filemeta.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub FileName: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileSize` should have a snake case name
[INFO] [stdout]   --> src/meta/filemeta.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub FileSize: u64,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Location` should have a snake case name
[INFO] [stdout]   --> src/meta/filemeta.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub Location: String,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `location`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `UploadAt` should have a snake case name
[INFO] [stdout]   --> src/meta/filemeta.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub UploadAt: String,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileHash` should have a snake case name
[INFO] [stdout]  --> src/mq/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     FileHash      :String,
[INFO] [stdout]   |     ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `CurLocation` should have a snake case name
[INFO] [stdout]  --> src/mq/mod.rs:8:2
[INFO] [stdout]   |
[INFO] [stdout] 8 |     CurLocation   :String,
[INFO] [stdout]   |     ^^^^^^^^^^^ help: convert the identifier to snake case: `cur_location`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `DestLocation` should have a snake case name
[INFO] [stdout]  --> src/mq/mod.rs:9:2
[INFO] [stdout]   |
[INFO] [stdout] 9 |     DestLocation  :String,
[INFO] [stdout]   |     ^^^^^^^^^^^^ help: convert the identifier to snake case: `dest_location`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `DestStoreType` should have a snake case name
[INFO] [stdout]   --> src/mq/mod.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |     DestStoreType :cmn::store::StoreType,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to snake case: `dest_store_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `download_URL` should have a snake case name
[INFO] [stdout]   --> src/store/aws_s3/aws_s3_conn.rs:23:14
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub async fn download_URL(objName: String) -> String {
[INFO] [stdout]    |              ^^^^^^^^^^^^ help: convert the identifier to snake case: `download_url`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `objName` should have a snake case name
[INFO] [stdout]   --> src/store/aws_s3/aws_s3_conn.rs:23:27
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub async fn download_URL(objName: String) -> String {
[INFO] [stdout]    |                           ^^^^^^^ help: convert the identifier to snake case: `obj_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `MD5` should have a snake case name
[INFO] [stdout]   --> src/util/util.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn MD5(data: &[u8]) ->String {
[INFO] [stdout]    |        ^^^ help: convert the identifier to snake case: `md5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `file_MD5` should have a snake case name
[INFO] [stdout]   --> src/util/util.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn file_MD5(file: &mut fs::File) ->String {
[INFO] [stdout]    |        ^^^^^^^^ help: convert the identifier to snake case: `file_md5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Code` should have a snake case name
[INFO] [stdout]  --> src/util/resp.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub Code: Option<isize>,
[INFO] [stdout]   |         ^^^^ help: convert the identifier to snake case (notice the capitalization): `code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Msg` should have a snake case name
[INFO] [stdout]  --> src/util/resp.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub Msg: Option<String>,
[INFO] [stdout]   |         ^^^ help: convert the identifier to snake case: `msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Data` should have a snake case name
[INFO] [stdout]  --> src/util/resp.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub Data: Option<serde_json::Value>,
[INFO] [stdout]   |         ^^^^ help: convert the identifier to snake case: `data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `JSONBytes` should have a snake case name
[INFO] [stdout]   --> src/util/resp.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn JSONBytes(& self) -> Vec<u8> {
[INFO] [stdout]    |            ^^^^^^^^^ help: convert the identifier to snake case: `jsonbytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `JSONString` should have a snake case name
[INFO] [stdout]   --> src/util/resp.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub fn JSONString(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^ help: convert the identifier to snake case: `jsonstring`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StreamExt`
[INFO] [stdout]  --> src/mq/consumer.rs:2:21
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::{join, StreamExt};
[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 imports: `BasicProperties`, `options::*`, and `types::FieldTable`
[INFO] [stdout]  --> src/mq/consumer.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | use lapin::{options::*, types::FieldTable, BasicProperties, ConnectionProperties};
[INFO] [stdout]   |             ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::convert::Infallible`
[INFO] [stdout]  --> src/mq/consumer.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::convert::Infallible;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_amqp::*`
[INFO] [stdout]  --> src/mq/consumer.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio_amqp::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Manager` and `PoolError`
[INFO] [stdout]  --> src/mq/producer.rs:1:22
[INFO] [stdout]   |
[INFO] [stdout] 1 | use deadpool_lapin::{Manager, Pool, PoolError};
[INFO] [stdout]   |                      ^^^^^^^        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `join`
[INFO] [stdout]  --> src/mq/producer.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::{join, StreamExt};
[INFO] [stdout]   |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ConnectionProperties`
[INFO] [stdout]  --> src/mq/producer.rs:3:61
[INFO] [stdout]   |
[INFO] [stdout] 3 | use lapin::{options::*, types::FieldTable, BasicProperties, ConnectionProperties};
[INFO] [stdout]   |                                                             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::result::Result as StdResult`
[INFO] [stdout]  --> src/mq/producer.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::result::Result as StdResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/mq/producer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error as ThisError`
[INFO] [stdout]  --> src/mq/producer.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use thiserror::Error as ThisError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_amqp::*`
[INFO] [stdout]  --> src/mq/producer.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio_amqp::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Rejection`
[INFO] [stdout]  --> src/mq/producer.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use warp::{Filter, Rejection, Reply};
[INFO] [stdout]   |                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `operation::PutObject`
[INFO] [stdout]  --> src/store/aws_s3/aws_s3_conn.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | use aws_sdk_s3::{operation::PutObject, Client};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cache/redis.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let mut con = redis::Client::open(redis_conn_url)
[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]   --> src/db/mysql/conn.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let mut conn = Conn::new(url).expect("Failed to connect to mysql");
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row`
[INFO] [stdout]   --> src/db/mysql/conn.rs:33:26
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub(crate) fn parse_rows(row: Row) {
[INFO] [stdout]    |                          ^^^ help: if this is intentional, prefix it with an underscore: `_row`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pool`
[INFO] [stdout]   --> src/mq/consumer.rs:30:28
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub async fn start_consume(pool:Pool) ->Result<()> {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `objName`
[INFO] [stdout]   --> src/store/aws_s3/aws_s3_conn.rs:23:27
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub async fn download_URL(objName: String) -> String {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_objName`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `REDIS_HOST` is never used
[INFO] [stdout]  --> src/cache/redis.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | const REDIS_HOST: &str = "127.0.0.1:6379/";
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `REDIS_PASS` is never used
[INFO] [stdout]  --> src/cache/redis.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const REDIS_PASS: &str = "testupload";
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `redis_pool` is never used
[INFO] [stdout]   --> src/cache/redis.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn redis_pool() -> POOL {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_rows` is never used
[INFO] [stdout]   --> src/db/mysql/conn.rs:33:15
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub(crate) fn parse_rows(row: Row) {
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `FileHash`, `CurLocation`, `DestLocation`, and `DestStoreType` are never read
[INFO] [stdout]   --> src/mq/mod.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct TransferData  {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout]  7 |     FileHash      :String,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]  8 |     CurLocation   :String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]  9 |     DestLocation  :String,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 10 |     DestStoreType :cmn::store::StoreType,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rmq_listen` is never used
[INFO] [stdout]   --> src/mq/consumer.rs:37:10
[INFO] [stdout]    |
[INFO] [stdout] 37 | async fn rmq_listen(pool: Pool) -> Result<()> {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `t_main` is never used
[INFO] [stdout]   --> src/mq/consumer.rs:53:10
[INFO] [stdout]    |
[INFO] [stdout] 53 | async fn t_main() -> Result<()> {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `health_handler` is never used
[INFO] [stdout]   --> src/mq/consumer.rs:79:10
[INFO] [stdout]    |
[INFO] [stdout] 79 | async fn health_handler() -> WebResult<impl Reply> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `region`, `bucket`, `filename`, `key`, and `verbose` are never read
[INFO] [stdout]   --> src/store/aws_s3/mod.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | struct Opt {
[INFO] [stdout]    |        --- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout]  7 |     region: Option<String>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |     bucket: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     filename: String,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     key: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     verbose: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Opt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileHash` should have a snake case name
[INFO] [stdout]   --> src/db/file.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub FileHash: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileName` should have a snake case name
[INFO] [stdout]   --> src/db/file.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub FileName: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileSize` should have a snake case name
[INFO] [stdout]   --> src/db/file.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub FileSize: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileAddr` should have a snake case name
[INFO] [stdout]   --> src/db/file.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub FileAddr: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Username` should have a snake case name
[INFO] [stdout]  --> src/db/user.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub Username: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `username`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Email` should have a snake case name
[INFO] [stdout]  --> src/db/user.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub Email: String,
[INFO] [stdout]   |         ^^^^^ help: convert the identifier to snake case: `email`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Phone` should have a snake case name
[INFO] [stdout]  --> src/db/user.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub Phone: String,
[INFO] [stdout]   |         ^^^^^ help: convert the identifier to snake case: `phone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `SignupAt` should have a snake case name
[INFO] [stdout]   --> src/db/user.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub SignupAt: String,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `signup_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `LastActiveAt` should have a snake case name
[INFO] [stdout]   --> src/db/user.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub LastActiveAt: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: convert the identifier to snake case: `last_active_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Status` should have a snake case name
[INFO] [stdout]   --> src/db/user.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub Status: isize,
[INFO] [stdout]    |         ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `signupAt` should have a snake case name
[INFO] [stdout]   --> src/db/user.rs:79:39
[INFO] [stdout]    |
[INFO] [stdout] 79 |             |(username, email, phone, signupAt, lastActiveAt, status)| User {
[INFO] [stdout]    |                                       ^^^^^^^^ help: convert the identifier to snake case: `signup_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `lastActiveAt` should have a snake case name
[INFO] [stdout]   --> src/db/user.rs:79:49
[INFO] [stdout]    |
[INFO] [stdout] 79 |             |(username, email, phone, signupAt, lastActiveAt, status)| User {
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^ help: convert the identifier to snake case: `last_active_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `UserName` should have a snake case name
[INFO] [stdout]  --> src/db/userfile.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub UserName: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `user_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileHash` should have a snake case name
[INFO] [stdout]  --> src/db/userfile.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub FileHash: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileName` should have a snake case name
[INFO] [stdout]  --> src/db/userfile.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub FileName: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileSize` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub FileSize: i64,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `UploadAt` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub UploadAt: String,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `LastUpdated` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub LastUpdated: String,
[INFO] [stdout]    |         ^^^^^^^^^^^ help: convert the identifier to snake case: `last_updated`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileHash` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:51:25
[INFO] [stdout]    |
[INFO] [stdout] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]    |                         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileName` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:51:35
[INFO] [stdout]    |
[INFO] [stdout] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]    |                                   ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileSize` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:51:45
[INFO] [stdout]    |
[INFO] [stdout] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]    |                                             ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `uploadAt` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:51:55
[INFO] [stdout]    |
[INFO] [stdout] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]    |                                                       ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `uastUpdated` should have a snake case name
[INFO] [stdout]   --> src/db/userfile.rs:51:65
[INFO] [stdout]    |
[INFO] [stdout] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^ help: convert the identifier to snake case: `uast_updated`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileHash` should have a snake case name
[INFO] [stdout]    --> src/db/userfile.rs:115:25
[INFO] [stdout]     |
[INFO] [stdout] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]     |                         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileName` should have a snake case name
[INFO] [stdout]    --> src/db/userfile.rs:115:35
[INFO] [stdout]     |
[INFO] [stdout] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]     |                                   ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileSize` should have a snake case name
[INFO] [stdout]    --> src/db/userfile.rs:115:45
[INFO] [stdout]     |
[INFO] [stdout] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]     |                                             ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `uploadAt` should have a snake case name
[INFO] [stdout]    --> src/db/userfile.rs:115:55
[INFO] [stdout]     |
[INFO] [stdout] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]     |                                                       ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `uastUpdated` should have a snake case name
[INFO] [stdout]    --> src/db/userfile.rs:115:65
[INFO] [stdout]     |
[INFO] [stdout] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^ help: convert the identifier to snake case: `uast_updated`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `DBConn` should have a snake case name
[INFO] [stdout]   --> src/db/mysql/conn.rs:29:15
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(crate) fn DBConn() -> MYDB {
[INFO] [stdout]    |               ^^^^^^ help: convert the identifier to snake case: `dbconn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileSha1` should have a snake case name
[INFO] [stdout]  --> src/meta/filemeta.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub FileSha1: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_sha1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileName` should have a snake case name
[INFO] [stdout]  --> src/meta/filemeta.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub FileName: String,
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileSize` should have a snake case name
[INFO] [stdout]   --> src/meta/filemeta.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub FileSize: u64,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Location` should have a snake case name
[INFO] [stdout]   --> src/meta/filemeta.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub Location: String,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `location`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `UploadAt` should have a snake case name
[INFO] [stdout]   --> src/meta/filemeta.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub UploadAt: String,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FileHash` should have a snake case name
[INFO] [stdout]  --> src/mq/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     FileHash      :String,
[INFO] [stdout]   |     ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `CurLocation` should have a snake case name
[INFO] [stdout]  --> src/mq/mod.rs:8:2
[INFO] [stdout]   |
[INFO] [stdout] 8 |     CurLocation   :String,
[INFO] [stdout]   |     ^^^^^^^^^^^ help: convert the identifier to snake case: `cur_location`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `DestLocation` should have a snake case name
[INFO] [stdout]  --> src/mq/mod.rs:9:2
[INFO] [stdout]   |
[INFO] [stdout] 9 |     DestLocation  :String,
[INFO] [stdout]   |     ^^^^^^^^^^^^ help: convert the identifier to snake case: `dest_location`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `DestStoreType` should have a snake case name
[INFO] [stdout]   --> src/mq/mod.rs:10:2
[INFO] [stdout]    |
[INFO] [stdout] 10 |     DestStoreType :cmn::store::StoreType,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to snake case: `dest_store_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `download_URL` should have a snake case name
[INFO] [stdout]   --> src/store/aws_s3/aws_s3_conn.rs:23:14
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub async fn download_URL(objName: String) -> String {
[INFO] [stdout]    |              ^^^^^^^^^^^^ help: convert the identifier to snake case: `download_url`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `objName` should have a snake case name
[INFO] [stdout]   --> src/store/aws_s3/aws_s3_conn.rs:23:27
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub async fn download_URL(objName: String) -> String {
[INFO] [stdout]    |                           ^^^^^^^ help: convert the identifier to snake case: `obj_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `MD5` should have a snake case name
[INFO] [stdout]   --> src/util/util.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn MD5(data: &[u8]) ->String {
[INFO] [stdout]    |        ^^^ help: convert the identifier to snake case: `md5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `file_MD5` should have a snake case name
[INFO] [stdout]   --> src/util/util.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn file_MD5(file: &mut fs::File) ->String {
[INFO] [stdout]    |        ^^^^^^^^ help: convert the identifier to snake case: `file_md5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Code` should have a snake case name
[INFO] [stdout]  --> src/util/resp.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub Code: Option<isize>,
[INFO] [stdout]   |         ^^^^ help: convert the identifier to snake case (notice the capitalization): `code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Msg` should have a snake case name
[INFO] [stdout]  --> src/util/resp.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub Msg: Option<String>,
[INFO] [stdout]   |         ^^^ help: convert the identifier to snake case: `msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Data` should have a snake case name
[INFO] [stdout]  --> src/util/resp.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub Data: Option<serde_json::Value>,
[INFO] [stdout]   |         ^^^^ help: convert the identifier to snake case: `data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `JSONBytes` should have a snake case name
[INFO] [stdout]   --> src/util/resp.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn JSONBytes(& self) -> Vec<u8> {
[INFO] [stdout]    |            ^^^^^^^^^ help: convert the identifier to snake case: `jsonbytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `JSONString` should have a snake case name
[INFO] [stdout]   --> src/util/resp.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub fn JSONString(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^ help: convert the identifier to snake case: `jsonstring`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 4.54s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: buf_redux v0.8.4, multipart v0.18.0, openssl v0.10.45, redis v0.22.3
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "cc8b0a34f5eceb2c87b557306fd882a2d7ba9ee7e8d6c18dc795309adfd5e880", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "cc8b0a34f5eceb2c87b557306fd882a2d7ba9ee7e8d6c18dc795309adfd5e880" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `StreamExt`
[INFO] [stderr]  --> src/mq/consumer.rs:2:21
[INFO] [stderr]   |
[INFO] [stderr] 2 | use futures::{join, StreamExt};
[INFO] [stderr]   |                     ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BasicProperties`, `options::*`, and `types::FieldTable`
[INFO] [stderr]  --> src/mq/consumer.rs:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 | use lapin::{options::*, types::FieldTable, BasicProperties, ConnectionProperties};
[INFO] [stderr]   |             ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::convert::Infallible`
[INFO] [stderr]  --> src/mq/consumer.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::convert::Infallible;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio_amqp::*`
[INFO] [stderr]  --> src/mq/consumer.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use tokio_amqp::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Manager` and `PoolError`
[INFO] [stderr]  --> src/mq/producer.rs:1:22
[INFO] [stderr]   |
[INFO] [stderr] 1 | use deadpool_lapin::{Manager, Pool, PoolError};
[INFO] [stderr]   |                      ^^^^^^^        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `join`
[INFO] [stderr]  --> src/mq/producer.rs:2:15
[INFO] [stderr]   |
[INFO] [stderr] 2 | use futures::{join, StreamExt};
[INFO] [stderr]   |               ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ConnectionProperties`
[INFO] [stderr]  --> src/mq/producer.rs:3:61
[INFO] [stderr]   |
[INFO] [stderr] 3 | use lapin::{options::*, types::FieldTable, BasicProperties, ConnectionProperties};
[INFO] [stderr]   |                                                             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::result::Result as StdResult`
[INFO] [stderr]  --> src/mq/producer.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::result::Result as StdResult;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Duration`
[INFO] [stderr]  --> src/mq/producer.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::time::Duration;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `thiserror::Error as ThisError`
[INFO] [stderr]  --> src/mq/producer.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use thiserror::Error as ThisError;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio_amqp::*`
[INFO] [stderr]  --> src/mq/producer.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use tokio_amqp::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Rejection`
[INFO] [stderr]  --> src/mq/producer.rs:9:20
[INFO] [stderr]   |
[INFO] [stderr] 9 | use warp::{Filter, Rejection, Reply};
[INFO] [stderr]   |                    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `operation::PutObject`
[INFO] [stderr]  --> src/store/aws_s3/aws_s3_conn.rs:4:18
[INFO] [stderr]   |
[INFO] [stderr] 4 | use aws_sdk_s3::{operation::PutObject, Client};
[INFO] [stderr]   |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/cache/redis.rs:14:13
[INFO] [stderr]    |
[INFO] [stderr] 14 |         let mut con = redis::Client::open(redis_conn_url)
[INFO] [stderr]    |             ----^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/db/mysql/conn.rs:21:13
[INFO] [stderr]    |
[INFO] [stderr] 21 |         let mut conn = Conn::new(url).expect("Failed to connect to mysql");
[INFO] [stderr]    |             ----^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `row`
[INFO] [stderr]   --> src/db/mysql/conn.rs:33:26
[INFO] [stderr]    |
[INFO] [stderr] 33 | pub(crate) fn parse_rows(row: Row) {
[INFO] [stderr]    |                          ^^^ help: if this is intentional, prefix it with an underscore: `_row`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `pool`
[INFO] [stderr]   --> src/mq/consumer.rs:30:28
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub async fn start_consume(pool:Pool) ->Result<()> {
[INFO] [stderr]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `objName`
[INFO] [stderr]   --> src/store/aws_s3/aws_s3_conn.rs:23:27
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub async fn download_URL(objName: String) -> String {
[INFO] [stderr]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_objName`
[INFO] [stderr] 
[INFO] [stderr] warning: constant `REDIS_HOST` is never used
[INFO] [stderr]  --> src/cache/redis.rs:7:7
[INFO] [stderr]   |
[INFO] [stderr] 7 | const REDIS_HOST: &str = "127.0.0.1:6379/";
[INFO] [stderr]   |       ^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `REDIS_PASS` is never used
[INFO] [stderr]  --> src/cache/redis.rs:8:7
[INFO] [stderr]   |
[INFO] [stderr] 8 | const REDIS_PASS: &str = "testupload";
[INFO] [stderr]   |       ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `redis_pool` is never used
[INFO] [stderr]   --> src/cache/redis.rs:23:8
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub fn redis_pool() -> POOL {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_rows` is never used
[INFO] [stderr]   --> src/db/mysql/conn.rs:33:15
[INFO] [stderr]    |
[INFO] [stderr] 33 | pub(crate) fn parse_rows(row: Row) {
[INFO] [stderr]    |               ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `FileHash`, `CurLocation`, `DestLocation`, and `DestStoreType` are never read
[INFO] [stderr]   --> src/mq/mod.rs:7:5
[INFO] [stderr]    |
[INFO] [stderr]  6 | pub struct TransferData  {
[INFO] [stderr]    |            ------------ fields in this struct
[INFO] [stderr]  7 |     FileHash      :String,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr]  8 |     CurLocation   :String,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]  9 |     DestLocation  :String,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 10 |     DestStoreType :cmn::store::StoreType,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `rmq_listen` is never used
[INFO] [stderr]   --> src/mq/consumer.rs:37:10
[INFO] [stderr]    |
[INFO] [stderr] 37 | async fn rmq_listen(pool: Pool) -> Result<()> {
[INFO] [stderr]    |          ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `t_main` is never used
[INFO] [stderr]   --> src/mq/consumer.rs:53:10
[INFO] [stderr]    |
[INFO] [stderr] 53 | async fn t_main() -> Result<()> {
[INFO] [stderr]    |          ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `health_handler` is never used
[INFO] [stderr]   --> src/mq/consumer.rs:79:10
[INFO] [stderr]    |
[INFO] [stderr] 79 | async fn health_handler() -> WebResult<impl Reply> {
[INFO] [stderr]    |          ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `region`, `bucket`, `filename`, `key`, and `verbose` are never read
[INFO] [stderr]   --> src/store/aws_s3/mod.rs:7:5
[INFO] [stderr]    |
[INFO] [stderr]  4 | struct Opt {
[INFO] [stderr]    |        --- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr]  7 |     region: Option<String>,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 11 |     bucket: String,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 15 |     filename: String,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 19 |     key: String,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 23 |     verbose: bool,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Opt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `FileHash` should have a snake case name
[INFO] [stderr]   --> src/db/file.rs:40:9
[INFO] [stderr]    |
[INFO] [stderr] 40 |     pub FileHash: Option<String>,
[INFO] [stderr]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `FileName` should have a snake case name
[INFO] [stderr]   --> src/db/file.rs:41:9
[INFO] [stderr]    |
[INFO] [stderr] 41 |     pub FileName: Option<String>,
[INFO] [stderr]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `FileSize` should have a snake case name
[INFO] [stderr]   --> src/db/file.rs:42:9
[INFO] [stderr]    |
[INFO] [stderr] 42 |     pub FileSize: Option<String>,
[INFO] [stderr]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `FileAddr` should have a snake case name
[INFO] [stderr]   --> src/db/file.rs:43:9
[INFO] [stderr]    |
[INFO] [stderr] 43 |     pub FileAddr: Option<String>,
[INFO] [stderr]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_addr`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `Username` should have a snake case name
[INFO] [stderr]  --> src/db/user.rs:7:9
[INFO] [stderr]   |
[INFO] [stderr] 7 |     pub Username: String,
[INFO] [stderr]   |         ^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `username`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `Email` should have a snake case name
[INFO] [stderr]  --> src/db/user.rs:8:9
[INFO] [stderr]   |
[INFO] [stderr] 8 |     pub Email: String,
[INFO] [stderr]   |         ^^^^^ help: convert the identifier to snake case: `email`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `Phone` should have a snake case name
[INFO] [stderr]  --> src/db/user.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 |     pub Phone: String,
[INFO] [stderr]   |         ^^^^^ help: convert the identifier to snake case: `phone`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `SignupAt` should have a snake case name
[INFO] [stderr]   --> src/db/user.rs:10:9
[INFO] [stderr]    |
[INFO] [stderr] 10 |     pub SignupAt: String,
[INFO] [stderr]    |         ^^^^^^^^ help: convert the identifier to snake case: `signup_at`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `LastActiveAt` should have a snake case name
[INFO] [stderr]   --> src/db/user.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 |     pub LastActiveAt: String,
[INFO] [stderr]    |         ^^^^^^^^^^^^ help: convert the identifier to snake case: `last_active_at`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `Status` should have a snake case name
[INFO] [stderr]   --> src/db/user.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 12 |     pub Status: isize,
[INFO] [stderr]    |         ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `status`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `signupAt` should have a snake case name
[INFO] [stderr]   --> src/db/user.rs:79:39
[INFO] [stderr]    |
[INFO] [stderr] 79 |             |(username, email, phone, signupAt, lastActiveAt, status)| User {
[INFO] [stderr]    |                                       ^^^^^^^^ help: convert the identifier to snake case: `signup_at`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `lastActiveAt` should have a snake case name
[INFO] [stderr]   --> src/db/user.rs:79:49
[INFO] [stderr]    |
[INFO] [stderr] 79 |             |(username, email, phone, signupAt, lastActiveAt, status)| User {
[INFO] [stderr]    |                                                 ^^^^^^^^^^^^ help: convert the identifier to snake case: `last_active_at`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `UserName` should have a snake case name
[INFO] [stderr]  --> src/db/userfile.rs:7:9
[INFO] [stderr]   |
[INFO] [stderr] 7 |     pub UserName: String,
[INFO] [stderr]   |         ^^^^^^^^ help: convert the identifier to snake case: `user_name`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `FileHash` should have a snake case name
[INFO] [stderr]  --> src/db/userfile.rs:8:9
[INFO] [stderr]   |
[INFO] [stderr] 8 |     pub FileHash: String,
[INFO] [stderr]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `FileName` should have a snake case name
[INFO] [stderr]  --> src/db/userfile.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 |     pub FileName: String,
[INFO] [stderr]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `FileSize` should have a snake case name
[INFO] [stderr]   --> src/db/userfile.rs:10:9
[INFO] [stderr]    |
[INFO] [stderr] 10 |     pub FileSize: i64,
[INFO] [stderr]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `UploadAt` should have a snake case name
[INFO] [stderr]   --> src/db/userfile.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 |     pub UploadAt: String,
[INFO] [stderr]    |         ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `LastUpdated` should have a snake case name
[INFO] [stderr]   --> src/db/userfile.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 12 |     pub LastUpdated: String,
[INFO] [stderr]    |         ^^^^^^^^^^^ help: convert the identifier to snake case: `last_updated`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `fileHash` should have a snake case name
[INFO] [stderr]   --> src/db/userfile.rs:51:25
[INFO] [stderr]    |
[INFO] [stderr] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stderr]    |                         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `fileName` should have a snake case name
[INFO] [stderr]   --> src/db/userfile.rs:51:35
[INFO] [stderr]    |
[INFO] [stderr] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stderr]    |                                   ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `fileSize` should have a snake case name
[INFO] [stderr]   --> src/db/userfile.rs:51:45
[INFO] [stderr]    |
[INFO] [stderr] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stderr]    |                                             ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `uploadAt` should have a snake case name
[INFO] [stderr]   --> src/db/userfile.rs:51:55
[INFO] [stderr]    |
[INFO] [stderr] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stderr]    |                                                       ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `uastUpdated` should have a snake case name
[INFO] [stderr]   --> src/db/userfile.rs:51:65
[INFO] [stderr]    |
[INFO] [stderr] 51 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stderr]    |                                                                 ^^^^^^^^^^^ help: convert the identifier to snake case: `uast_updated`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `fileHash` should have a snake case name
[INFO] [stderr]    --> src/db/userfile.rs:115:25
[INFO] [stderr]     |
[INFO] [stderr] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stderr]     |                         ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `fileName` should have a snake case name
[INFO] [stderr]    --> src/db/userfile.rs:115:35
[INFO] [stderr]     |
[INFO] [stderr] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stderr]     |                                   ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `fileSize` should have a snake case name
[INFO] [stderr]    --> src/db/userfile.rs:115:45
[INFO] [stderr]     |
[INFO] [stderr] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stderr]     |                                             ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `uploadAt` should have a snake case name
[INFO] [stderr]    --> src/db/userfile.rs:115:55
[INFO] [stderr]     |
[INFO] [stderr] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stderr]     |                                                       ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `uastUpdated` should have a snake case name
[INFO] [stderr]    --> src/db/userfile.rs:115:65
[INFO] [stderr]     |
[INFO] [stderr] 115 |             |(username, fileHash, fileName, fileSize, uploadAt, uastUpdated)| UserFile {
[INFO] [stderr]     |                                                                 ^^^^^^^^^^^ help: convert the identifier to snake case: `uast_updated`
[INFO] [stderr] 
[INFO] [stderr] warning: function `DBConn` should have a snake case name
[INFO] [stderr]   --> src/db/mysql/conn.rs:29:15
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub(crate) fn DBConn() -> MYDB {
[INFO] [stderr]    |               ^^^^^^ help: convert the identifier to snake case: `dbconn`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `FileSha1` should have a snake case name
[INFO] [stderr]  --> src/meta/filemeta.rs:8:9
[INFO] [stderr]   |
[INFO] [stderr] 8 |     pub FileSha1: String,
[INFO] [stderr]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_sha1`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `FileName` should have a snake case name
[INFO] [stderr]  --> src/meta/filemeta.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 |     pub FileName: String,
[INFO] [stderr]   |         ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `FileSize` should have a snake case name
[INFO] [stderr]   --> src/meta/filemeta.rs:10:9
[INFO] [stderr]    |
[INFO] [stderr] 10 |     pub FileSize: u64,
[INFO] [stderr]    |         ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `Location` should have a snake case name
[INFO] [stderr]   --> src/meta/filemeta.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 |     pub Location: String,
[INFO] [stderr]    |         ^^^^^^^^ help: convert the identifier to snake case: `location`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `UploadAt` should have a snake case name
[INFO] [stderr]   --> src/meta/filemeta.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 12 |     pub UploadAt: String,
[INFO] [stderr]    |         ^^^^^^^^ help: convert the identifier to snake case: `upload_at`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `FileHash` should have a snake case name
[INFO] [stderr]  --> src/mq/mod.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 |     FileHash      :String,
[INFO] [stderr]   |     ^^^^^^^^ help: convert the identifier to snake case: `file_hash`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `CurLocation` should have a snake case name
[INFO] [stderr]  --> src/mq/mod.rs:8:2
[INFO] [stderr]   |
[INFO] [stderr] 8 |     CurLocation   :String,
[INFO] [stderr]   |     ^^^^^^^^^^^ help: convert the identifier to snake case: `cur_location`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `DestLocation` should have a snake case name
[INFO] [stderr]  --> src/mq/mod.rs:9:2
[INFO] [stderr]   |
[INFO] [stderr] 9 |     DestLocation  :String,
[INFO] [stderr]   |     ^^^^^^^^^^^^ help: convert the identifier to snake case: `dest_location`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `DestStoreType` should have a snake case name
[INFO] [stderr]   --> src/mq/mod.rs:10:2
[INFO] [stderr]    |
[INFO] [stderr] 10 |     DestStoreType :cmn::store::StoreType,
[INFO] [stderr]    |     ^^^^^^^^^^^^^ help: convert the identifier to snake case: `dest_store_type`
[INFO] [stderr] 
[INFO] [stderr] warning: function `download_URL` should have a snake case name
[INFO] [stderr]   --> src/store/aws_s3/aws_s3_conn.rs:23:14
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub async fn download_URL(objName: String) -> String {
[INFO] [stderr]    |              ^^^^^^^^^^^^ help: convert the identifier to snake case: `download_url`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `objName` should have a snake case name
[INFO] [stderr]   --> src/store/aws_s3/aws_s3_conn.rs:23:27
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub async fn download_URL(objName: String) -> String {
[INFO] [stderr]    |                           ^^^^^^^ help: convert the identifier to snake case: `obj_name`
[INFO] [stderr] 
[INFO] [stderr] warning: function `MD5` should have a snake case name
[INFO] [stderr]   --> src/util/util.rs:25:8
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub fn MD5(data: &[u8]) ->String {
[INFO] [stderr]    |        ^^^ help: convert the identifier to snake case: `md5`
[INFO] [stderr] 
[INFO] [stderr] warning: function `file_MD5` should have a snake case name
[INFO] [stderr]   --> src/util/util.rs:30:8
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub fn file_MD5(file: &mut fs::File) ->String {
[INFO] [stderr]    |        ^^^^^^^^ help: convert the identifier to snake case: `file_md5`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `Code` should have a snake case name
[INFO] [stderr]  --> src/util/resp.rs:7:9
[INFO] [stderr]   |
[INFO] [stderr] 7 |     pub Code: Option<isize>,
[INFO] [stderr]   |         ^^^^ help: convert the identifier to snake case (notice the capitalization): `code`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `Msg` should have a snake case name
[INFO] [stderr]  --> src/util/resp.rs:8:9
[INFO] [stderr]   |
[INFO] [stderr] 8 |     pub Msg: Option<String>,
[INFO] [stderr]   |         ^^^ help: convert the identifier to snake case: `msg`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `Data` should have a snake case name
[INFO] [stderr]  --> src/util/resp.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 |     pub Data: Option<serde_json::Value>,
[INFO] [stderr]   |         ^^^^ help: convert the identifier to snake case: `data`
[INFO] [stderr] 
[INFO] [stderr] warning: method `JSONBytes` should have a snake case name
[INFO] [stderr]   --> src/util/resp.rs:22:12
[INFO] [stderr]    |
[INFO] [stderr] 22 |     pub fn JSONBytes(& self) -> Vec<u8> {
[INFO] [stderr]    |            ^^^^^^^^^ help: convert the identifier to snake case: `jsonbytes`
[INFO] [stderr] 
[INFO] [stderr] warning: method `JSONString` should have a snake case name
[INFO] [stderr]   --> src/util/resp.rs:28:12
[INFO] [stderr]    |
[INFO] [stderr] 28 |     pub fn JSONString(&self) -> String {
[INFO] [stderr]    |            ^^^^^^^^^^ help: convert the identifier to snake case: `jsonstring`
[INFO] [stderr] 
[INFO] [stderr] warning: `filestore-rs` (lib) generated 74 warnings (run `cargo fix --lib -p filestore-rs` to apply 18 suggestions)
[INFO] [stderr] warning: `filestore-rs` (lib test) generated 74 warnings (74 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.33s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: buf_redux v0.8.4, multipart v0.18.0, openssl v0.10.45, redis v0.22.3
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/filestore_rs-db9d28f042dbc416)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/service/chat/examples/client.rs (/opt/rustwide/target/debug/deps/chat_grpc_client-7d26c6ee145b3597)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/service/chat/examples/server.rs (/opt/rustwide/target/debug/deps/chat_grpc_server-8b4dd0eda3a22d19)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/filestore_rs-5e749ca32dc75e7c)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests filestore_rs
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "cc8b0a34f5eceb2c87b557306fd882a2d7ba9ee7e8d6c18dc795309adfd5e880", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cc8b0a34f5eceb2c87b557306fd882a2d7ba9ee7e8d6c18dc795309adfd5e880", kill_on_drop: false }`
[INFO] [stdout] cc8b0a34f5eceb2c87b557306fd882a2d7ba9ee7e8d6c18dc795309adfd5e880
