[INFO] cloning repository https://github.com/making-rockets/fast_rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/making-rockets/fast_rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaking-rockets%2Ffast_rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaking-rockets%2Ffast_rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 84dfac62bfd26b77b5d41ac2e51d6a8200e3abfa [INFO] testing making-rockets/fast_rust against try#ecabaf78506b7a4668d42dc20268c086b93f0fad for pr-87041 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaking-rockets%2Ffast_rust" "/workspace/builds/worker-9/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-9/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/making-rockets/fast_rust on toolchain ecabaf78506b7a4668d42dc20268c086b93f0fad [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/making-rockets/fast_rust [INFO] finished tweaking git repo https://github.com/making-rockets/fast_rust [INFO] tweaked toml for git repo https://github.com/making-rockets/fast_rust written to /workspace/builds/worker-9/source/Cargo.toml [INFO] crate git repo https://github.com/making-rockets/fast_rust already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f019cd5f320e1aa77ca11943adae2294709b9ca09534a4d8c2d7f69a2ddf7e56 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "f019cd5f320e1aa77ca11943adae2294709b9ca09534a4d8c2d7f69a2ddf7e56", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f019cd5f320e1aa77ca11943adae2294709b9ca09534a4d8c2d7f69a2ddf7e56", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f019cd5f320e1aa77ca11943adae2294709b9ca09534a4d8c2d7f69a2ddf7e56", kill_on_drop: false }` [INFO] [stdout] f019cd5f320e1aa77ca11943adae2294709b9ca09534a4d8c2d7f69a2ddf7e56 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9357d10f5bf9b2b48bf9c1d7031f7586ae0555b50c357c44a2f0ed49432a4809 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "9357d10f5bf9b2b48bf9c1d7031f7586ae0555b50c357c44a2f0ed49432a4809", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.24 [INFO] [stderr] Compiling syn v1.0.63 [INFO] [stderr] Compiling libc v0.2.88 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling spin v0.5.2 [INFO] [stderr] Compiling memchr v2.3.4 [INFO] [stderr] Compiling value-bag v1.0.0-alpha.6 [INFO] [stderr] Compiling log v0.4.14 [INFO] [stderr] Compiling version_check v0.9.2 [INFO] [stderr] Compiling futures-core v0.3.13 [INFO] [stderr] Compiling serde_derive v1.0.124 [INFO] [stderr] Compiling serde v1.0.124 [INFO] [stderr] Compiling cc v1.0.67 [INFO] [stderr] Compiling futures-io v0.3.13 [INFO] [stderr] Compiling once_cell v1.7.2 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling futures-sink v0.3.13 [INFO] [stderr] Compiling scopeguard v1.1.0 [INFO] [stderr] Compiling futures-task v0.3.13 [INFO] [stderr] Compiling smallvec v1.6.1 [INFO] [stderr] Compiling serde_json v1.0.64 [INFO] [stderr] Compiling byteorder v1.4.3 [INFO] [stderr] Compiling ahash v0.4.7 [INFO] [stderr] Compiling typenum v1.12.0 [INFO] [stderr] Compiling parking v2.0.0 [INFO] [stderr] Compiling fastrand v1.4.0 [INFO] [stderr] Compiling cache-padded v1.1.1 [INFO] [stderr] Compiling waker-fn v1.1.0 [INFO] [stderr] Compiling regex-syntax v0.6.22 [INFO] [stderr] Compiling event-listener v2.5.1 [INFO] [stderr] Compiling pin-project-internal v0.4.27 [INFO] [stderr] Compiling crc32fast v1.2.1 [INFO] [stderr] Compiling async-trait v0.1.48 [INFO] [stderr] Compiling vec-arena v1.0.0 [INFO] [stderr] Compiling adler v1.0.2 [INFO] [stderr] Compiling lexical-core v0.7.5 [INFO] [stderr] Compiling arrayvec v0.5.2 [INFO] [stderr] Compiling async-task v4.0.3 [INFO] [stderr] Compiling signal-hook v0.3.7 [INFO] [stderr] Compiling untrusted v0.7.1 [INFO] [stderr] Compiling const_fn v0.4.5 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling cpuid-bool v0.1.2 [INFO] [stderr] Compiling httparse v1.3.5 [INFO] [stderr] Compiling rayon-core v1.9.0 [INFO] [stderr] Compiling radium v0.5.3 [INFO] [stderr] Compiling dtoa v0.4.7 [INFO] [stderr] Compiling openssl v0.10.32 [INFO] [stderr] Compiling libm v0.2.1 [INFO] [stderr] Compiling getrandom v0.2.2 [INFO] [stderr] Compiling tap v1.0.1 [INFO] [stderr] Compiling native-tls v0.2.7 [INFO] [stderr] Compiling wyz v0.2.0 [INFO] [stderr] Compiling adler32 v1.2.0 [INFO] [stderr] Compiling build_const v0.2.1 [INFO] [stderr] Compiling funty v1.1.0 [INFO] [stderr] Compiling openssl-probe v0.1.2 [INFO] [stderr] Compiling weezl v0.1.4 [INFO] [stderr] Compiling bytemuck v1.5.1 [INFO] [stderr] Compiling unicode_categories v0.1.1 [INFO] [stderr] Compiling maplit v1.0.2 [INFO] [stderr] Compiling mac v0.1.1 [INFO] [stderr] Compiling precomputed-hash v0.1.1 [INFO] [stderr] Compiling tower-service v0.3.1 [INFO] [stderr] Compiling color_quant v1.1.0 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Compiling whoami v1.1.0 [INFO] [stderr] Compiling scoped_threadpool v0.1.9 [INFO] [stderr] Compiling utf-8 v0.7.5 [INFO] [stderr] Compiling void v1.0.2 [INFO] [stderr] Compiling sha1 v0.6.0 [INFO] [stderr] Compiling debug-helper v0.3.10 [INFO] [stderr] Compiling nodrop v0.1.14 [INFO] [stderr] Compiling validator_types v0.12.0 [INFO] [stderr] Compiling if_chain v1.0.1 [INFO] [stderr] Compiling base32 v0.4.0 [INFO] [stderr] Compiling hound v3.4.0 [INFO] [stderr] Compiling checked_int_cast v1.0.0 [INFO] [stderr] Compiling thin-slice v0.1.1 [INFO] [stderr] Compiling unicode-width v0.1.8 [INFO] [stderr] Compiling ego-tree v0.6.2 [INFO] [stderr] Compiling async_once v0.2.1 [INFO] [stderr] Compiling fast_api v0.1.0 (/opt/rustwide/workdir/fast_api) [INFO] [stderr] Compiling instant v0.1.9 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling thread_local v1.1.3 [INFO] [stderr] Compiling futures-channel v0.3.13 [INFO] [stderr] Compiling lock_api v0.4.2 [INFO] [stderr] Compiling lock_api v0.3.4 [INFO] [stderr] Compiling unicode-bidi v0.3.4 [INFO] [stderr] Compiling http v0.2.3 [INFO] [stderr] Compiling tinyvec v1.1.1 [INFO] [stderr] Compiling base64-url v1.4.9 [INFO] [stderr] Compiling hashbrown v0.9.1 [INFO] [stderr] Compiling concurrent-queue v1.2.2 [INFO] [stderr] Compiling fxhash v0.2.1 [INFO] [stderr] Compiling generic-array v0.14.4 [INFO] [stderr] Compiling standback v0.2.15 [INFO] [stderr] Compiling time v0.2.25 [INFO] [stderr] Compiling nom v6.1.2 [INFO] [stderr] Compiling cookie v0.14.4 [INFO] [stderr] Compiling nom v5.1.2 [INFO] [stderr] Compiling ahash v0.6.3 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling async-mutex v1.4.0 [INFO] [stderr] Compiling async-lock v2.3.0 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling crossbeam-utils v0.8.3 [INFO] [stderr] Compiling num-integer v0.1.44 [INFO] [stderr] Compiling memoffset v0.6.1 [INFO] [stderr] Compiling miniz_oxide v0.4.4 [INFO] [stderr] Compiling indexmap v1.6.2 [INFO] [stderr] Compiling num-iter v0.1.42 [INFO] [stderr] Compiling tokio v1.3.0 [INFO] [stderr] Compiling num-bigint v0.2.6 [INFO] [stderr] Compiling rayon v1.5.0 [INFO] [stderr] Compiling num-bigint v0.3.2 [INFO] [stderr] Compiling num-rational v0.3.2 [INFO] [stderr] Compiling tokio v0.3.7 [INFO] [stderr] Compiling heck v0.3.2 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling num-bigint-dig v0.6.1 [INFO] [stderr] Compiling dtoa-short v0.3.3 [INFO] [stderr] Compiling miniz_oxide v0.3.7 [INFO] [stderr] Compiling deflate v0.8.6 [INFO] [stderr] Compiling crc v1.8.1 [INFO] [stderr] Compiling futf v0.1.4 [INFO] [stderr] Compiling rgb v0.8.25 [INFO] [stderr] Compiling crc-any v2.3.5 [INFO] [stderr] Compiling unreachable v1.0.0 [INFO] [stderr] Compiling servo_arc v0.1.1 [INFO] [stderr] Compiling gif v0.11.1 [INFO] [stderr] Compiling getopts v0.2.21 [INFO] [stderr] Compiling tracing-core v0.1.17 [INFO] [stderr] Compiling async-channel v1.6.1 [INFO] [stderr] Compiling ring v0.16.20 [INFO] [stderr] Compiling openssl-sys v0.9.60 [INFO] [stderr] Compiling brotli-sys v0.3.2 [INFO] [stderr] Compiling bzip2-sys v0.1.10+1.0.8 [INFO] [stderr] Compiling libsqlite3-sys v0.20.1 [INFO] [stderr] Compiling hashlink v0.6.0 [INFO] [stderr] Compiling fallible_collections v0.4.0 [INFO] [stderr] Compiling encoding_rs v0.8.28 [INFO] [stderr] Compiling unicode-normalization v0.1.17 [INFO] [stderr] Compiling tendril v0.4.2 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling short-crypt v1.0.23 [INFO] [stderr] Compiling aho-corasick v0.7.15 [INFO] [stderr] Compiling futures-lite v1.11.3 [INFO] [stderr] Compiling combine v3.8.1 [INFO] [stderr] Compiling quote v1.0.9 [INFO] [stderr] Compiling num_cpus v1.13.0 [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Compiling signal-hook-registry v1.3.0 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling net2 v0.2.37 [INFO] [stderr] Compiling socket2 v0.3.19 [INFO] [stderr] Compiling parking_lot_core v0.8.3 [INFO] [stderr] Compiling time v0.1.44 [INFO] [stderr] Compiling hostname v0.3.1 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling smallvec v0.6.14 [INFO] [stderr] Compiling png v0.16.8 [INFO] [stderr] Compiling bitvec v0.19.5 [INFO] [stderr] Compiling http-body v0.4.0 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling threadpool v1.8.1 [INFO] [stderr] Compiling dashmap v4.0.2 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling idna v0.2.2 [INFO] [stderr] Compiling stringprep v0.1.2 [INFO] [stderr] Compiling resolv-conf v0.7.0 [INFO] [stderr] Compiling regex v1.4.3 [INFO] [stderr] Compiling parking_lot v0.11.1 [INFO] [stderr] Compiling nb-connect v1.0.3 [INFO] [stderr] Compiling blocking v1.0.2 [INFO] [stderr] Compiling async-executor v1.4.0 [INFO] [stderr] Compiling colored v2.0.0 [INFO] [stderr] Compiling crossbeam-channel v0.5.0 [INFO] [stderr] Compiling crossbeam-epoch v0.9.3 [INFO] [stderr] Compiling crossbeam-queue v0.3.1 [INFO] [stderr] Compiling flate2 v1.0.20 [INFO] [stderr] Compiling atoi v0.4.0 [INFO] [stderr] Compiling rand_pcg v0.2.1 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling digest v0.9.0 [INFO] [stderr] Compiling block-buffer v0.9.0 [INFO] [stderr] Compiling crypto-mac v0.10.0 [INFO] [stderr] Compiling url v2.2.1 [INFO] [stderr] Compiling bzip2 v0.3.3 [INFO] [stderr] Compiling crossbeam-deque v0.8.0 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling sha-1 v0.9.4 [INFO] [stderr] Compiling sha2 v0.9.3 [INFO] [stderr] Compiling md-5 v0.9.1 [INFO] [stderr] Compiling lodepng v3.4.5 [INFO] [stderr] Compiling pem v0.8.3 [INFO] [stderr] Compiling hmac v0.10.1 [INFO] [stderr] Compiling zip v0.5.6 [INFO] [stderr] Compiling crossbeam v0.8.0 [INFO] [stderr] Compiling webpki v0.21.4 [INFO] [stderr] Compiling sct v0.6.0 [INFO] [stderr] Compiling phf_generator v0.8.0 [INFO] [stderr] Compiling brotli2 v0.3.2 [INFO] [stderr] Compiling phf_codegen v0.8.0 [INFO] [stderr] Compiling string_cache_codegen v0.5.1 [INFO] [stderr] Compiling webpki-roots v0.21.0 [INFO] [stderr] Compiling selectors v0.22.0 [INFO] [stderr] Compiling synstructure v0.12.4 [INFO] [stderr] Compiling sqlformat v0.1.6 [INFO] [stderr] Compiling jpeg-decoder v0.1.22 [INFO] [stderr] Compiling tiff v0.6.1 [INFO] [stderr] Compiling ctor v0.1.19 [INFO] [stderr] Compiling futures-macro v0.3.13 [INFO] [stderr] Compiling derive_more v0.99.11 [INFO] [stderr] Compiling thiserror-impl v1.0.24 [INFO] [stderr] Compiling pin-project-internal v1.0.5 [INFO] [stderr] Compiling actix-macros v0.1.3 [INFO] [stderr] Compiling time-macros-impl v0.1.1 [INFO] [stderr] Compiling async-attributes v1.1.2 [INFO] [stderr] Compiling enum-as-inner v0.3.3 [INFO] [stderr] Compiling zeroize_derive v1.0.1 [INFO] [stderr] Compiling phf_macros v0.8.0 [INFO] [stderr] Compiling cssparser v0.27.2 [INFO] [stderr] Compiling html5ever v0.25.1 [INFO] [stderr] Compiling cssparser-macros v0.6.0 [INFO] [stderr] Compiling actix-web-codegen v0.4.0 [INFO] [stderr] Compiling rbatis-macro-driver v1.8.78 [INFO] [stderr] Compiling validator_derive v0.12.0 [INFO] [stderr] Compiling image v0.23.14 [INFO] [stderr] Compiling zeroize v1.2.0 [INFO] [stderr] Compiling time-macros v0.1.1 [INFO] [stderr] Compiling futures-util v0.3.13 [INFO] [stderr] Compiling phf v0.8.0 [INFO] [stderr] Compiling mio v0.6.23 [INFO] [stderr] Compiling polling v2.0.2 [INFO] [stderr] Compiling tracing v0.1.25 [INFO] [stderr] Compiling kv-log-macro v1.0.7 [INFO] [stderr] Compiling mio v0.7.9 [INFO] [stderr] Compiling rustls v0.19.0 [INFO] [stderr] Compiling want v0.3.0 [INFO] [stderr] Compiling env_logger v0.8.3 [INFO] [stderr] Compiling thiserror v1.0.24 [INFO] [stderr] Compiling async-io v1.3.1 [INFO] [stderr] Compiling mio-uds v0.6.8 [INFO] [stderr] Compiling tokio v0.2.25 [INFO] [stderr] Compiling pin-project v1.0.5 [INFO] [stderr] Compiling async-process v1.0.2 [INFO] [stderr] Compiling async-global-executor v2.0.2 [INFO] [stderr] Compiling tracing-futures v0.2.5 [INFO] [stderr] Compiling async-std v1.9.0 [INFO] [stderr] Compiling pin-project v0.4.27 [INFO] [stderr] Compiling actix-service v1.0.6 [INFO] [stderr] Compiling futures-executor v0.3.13 [INFO] [stderr] Compiling async-rustls v0.2.0 [INFO] [stderr] Compiling qrcode v0.12.0 [INFO] [stderr] Compiling futures v0.3.13 [INFO] [stderr] Compiling actix-threadpool v0.3.3 [INFO] [stderr] Compiling tokio-util v0.3.1 [INFO] [stderr] Compiling actix-rt v1.1.1 [INFO] [stderr] Compiling trust-dns-proto v0.19.7 [INFO] [stderr] Compiling combine v4.5.2 [INFO] [stderr] Compiling tokio-util v0.6.4 [INFO] [stderr] Compiling tokio-native-tls v0.3.0 [INFO] [stderr] Compiling actix-codec v0.3.0 [INFO] [stderr] Compiling h2 v0.2.7 [INFO] [stderr] Compiling h2 v0.3.1 [INFO] [stderr] Compiling actix-utils v2.0.0 [INFO] [stderr] Compiling actix-server v1.0.4 [INFO] [stderr] Compiling actix-tls v2.0.0 [INFO] [stderr] Compiling trust-dns-resolver v0.19.7 [INFO] [stderr] Compiling sqlx-rt v0.3.0 [INFO] [stderr] Compiling actix-testing v1.0.1 [INFO] [stderr] Compiling actix-connect v2.0.0 [INFO] [stderr] Compiling chrono v0.4.19 [INFO] [stderr] Compiling serde_urlencoded v0.7.0 [INFO] [stderr] Compiling ipnetwork v0.17.0 [INFO] [stderr] Compiling rust_decimal v1.10.3 [INFO] [stderr] Compiling uuid v0.8.2 [INFO] [stderr] Compiling bigdecimal v0.2.0 [INFO] [stderr] Compiling bit-vec v0.6.3 [INFO] [stderr] Compiling config v0.10.1 [INFO] [stderr] Compiling string_cache v0.8.1 [INFO] [stderr] Compiling actix-router v0.2.7 [INFO] [stderr] Compiling simple_asn1 v0.4.1 [INFO] [stderr] Compiling rustflake v0.1.1 [INFO] [stderr] Compiling toml_edit v0.2.0 [INFO] [stderr] Compiling deadpool v0.6.0 [INFO] [stderr] Compiling rexpr v1.0.7 [INFO] [stderr] Compiling validator v0.12.0 [INFO] [stderr] Compiling fast_log v1.3.23 [INFO] [stderr] Compiling captcha v0.0.8 [INFO] [stderr] Compiling actix-http v2.2.0 [INFO] [stderr] Compiling rsa v0.3.0 [INFO] [stderr] Compiling jsonwebtoken v7.2.0 [INFO] [stderr] Compiling py_sql v1.0.1 [INFO] [stderr] Compiling markup5ever v0.10.0 [INFO] [stderr] Compiling sqlx-core v0.5.1 [INFO] [stderr] Compiling redis v0.17.0 [INFO] [stderr] Compiling hyper v0.14.4 [INFO] [stderr] Compiling awc v2.0.3 [INFO] [stderr] Compiling actix-web v3.3.2 [INFO] [stderr] Compiling scraper v0.12.0 [INFO] [stderr] Compiling hyper-tls v0.5.0 [INFO] [stderr] Compiling reqwest v0.11.2 [INFO] [stderr] Compiling redis-async-pool v0.2.4 [INFO] [stderr] Compiling rbatis-core v1.8.70 [INFO] [stderr] Compiling rbatis v1.8.74 [INFO] [stderr] Compiling fast_demo v0.1.0 (/opt/rustwide/workdir/fast_demo) [INFO] [stderr] Compiling fast_common v0.1.0 (/opt/rustwide/workdir/fast_common) [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Debug, Serialize, Deserialize, Clone, PartialEq)] pub struct Menu [INFO] [stdout] { [INFO] [stdout] pub id : Option < u64 >, pub menu_name : Option < String >, pub parent_id [INFO] [stdout] : Option < u64 >, pub path : Option < String >, pub icon : Option < String [INFO] [stdout] >, pub index_no : Option < i32 >, pub remark : Option < String >, pub [INFO] [stdout] state : Option < i32 >, pub create_time : Option < NaiveDateTime >, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for Menu [INFO] [stdout] { [INFO] [stdout] type IdType = u64 ; fn id_name() -> String { "id".to_string() } fn [INFO] [stdout] get_id(& self) -> Option < & Self :: IdType > { self.id.as_ref() } fn [INFO] [stdout] table_name() -> String { "menu".to_string() } fn table_columns() -> String [INFO] [stdout] { [INFO] [stdout] "id,menu_name,parent_id,path,icon,index_no,remark,state,create_time".to_string() [INFO] [stdout] } fn formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, fn(arg : & str) -> String > [INFO] [stdout] { [INFO] [stdout] let mut m = std :: collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Debug, Serialize, Deserialize, Clone, PartialEq)] pub struct Role [INFO] [stdout] { [INFO] [stdout] pub id : Option < u64 >, pub role_name : Option < String >, pub index_no : [INFO] [stdout] Option < i32 >, pub remark : Option < String >, pub state : Option < i32 [INFO] [stdout] >, pub create_time : Option < NaiveDateTime >, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for Role [INFO] [stdout] { [INFO] [stdout] type IdType = u64 ; fn id_name() -> String { "id".to_string() } fn [INFO] [stdout] get_id(& self) -> Option < & Self :: IdType > { self.id.as_ref() } fn [INFO] [stdout] table_name() -> String { "role".to_string() } fn table_columns() -> String [INFO] [stdout] { "id,role_name,index_no,remark,state,create_time".to_string() } fn [INFO] [stdout] formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, fn(arg : & str) -> String > [INFO] [stdout] { [INFO] [stdout] let mut m = std :: collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Debug, Serialize, Deserialize, Clone, PartialEq)] pub struct User [INFO] [stdout] { [INFO] [stdout] pub id : Option < u64 >, pub user_name : Option < String >, pub age : [INFO] [stdout] Option < u64 >, pub create_time : Option < NaiveDateTime >, pub password : [INFO] [stdout] Option < String >, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for User [INFO] [stdout] { [INFO] [stdout] type IdType = u64 ; fn id_name() -> String { "id".to_string() } fn [INFO] [stdout] get_id(& self) -> Option < & Self :: IdType > { self.id.as_ref() } fn [INFO] [stdout] table_name() -> String { "user".to_string() } fn table_columns() -> String [INFO] [stdout] { "id,user_name,age,create_time,password".to_string() } fn [INFO] [stdout] formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, fn(arg : & str) -> String > [INFO] [stdout] { [INFO] [stdout] let mut m = std :: collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] warning: unused imports: `HttpResponse`, `Responder` [INFO] [stdout] --> fast_common/src/common/api_result.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use actix_web::{HttpResponse, Responder}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Expected` [INFO] [stdout] --> fast_common/src/common/api_result.rs:4:35 [INFO] [stdout] | [INFO] [stdout] 4 | use serde::de::{DeserializeOwned, Expected}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Serializer` [INFO] [stdout] --> fast_common/src/common/api_result.rs:5:24 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Serialize, Serializer}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `actix_web::dev::HttpResponseBuilder` [INFO] [stdout] --> fast_common/src/common/api_result.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use actix_web::dev::HttpResponseBuilder; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `actix_http::http::HeaderValue` [INFO] [stdout] --> fast_common/src/common/api_result.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use actix_http::http::HeaderValue; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CONTENT_DISPOSITION` [INFO] [stdout] --> fast_common/src/common/api_result.rs:9:46 [INFO] [stdout] | [INFO] [stdout] 9 | use actix_http::http::header::{CONTENT_TYPE, CONTENT_DISPOSITION, ACCESS_CONTROL_ALLOW_ORIGIN, CACHE_CONTROL}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> fast_common/src/common/api_result.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::__private::de::Content` [INFO] [stdout] --> fast_common/src/common/api_result.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use serde::__private::de::Content; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> fast_common/src/common/api_result.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HttpRequest`, `HttpResponse` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:6:31 [INFO] [stdout] | [INFO] [stdout] 6 | use actix_web::{error, Error, HttpRequest, HttpResponse}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GlobalError` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:11:38 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::common::api_result::{Api, GlobalError}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BorrowMut`, `Borrow` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:12:19 [INFO] [stdout] | [INFO] [stdout] 12 | use std::borrow::{Borrow, BorrowMut}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `actix_web::test::ok_service` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use actix_web::test::ok_service; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ResponseBuilder`, `Response` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:14:18 [INFO] [stdout] | [INFO] [stdout] 14 | use actix_http::{Response, ResponseBuilder, body::Body, HttpMessage}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `reqwest::StatusCode` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use reqwest::StatusCode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `validator::HasLen` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use validator::HasLen; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `actix_web::error::ReadlinesError::ContentTypeError` [INFO] [stdout] --> fast_common/src/middleware/handle_method.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use actix_web::error::ReadlinesError::ContentTypeError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::future::Future` [INFO] [stdout] --> fast_common/src/base/base_storage.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::future::Future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Menu` [INFO] [stdout] --> fast_common/src/models/role_menu.rs:2:27 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::models::menu::{Menu, MenuVo}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::models::user_role::UserRole` [INFO] [stdout] --> fast_common/src/models/user.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::models::user_role::UserRole; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Timelike` [INFO] [stdout] --> fast_common/src/utils/crypt_util.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use chrono::{Local, Timelike}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FromRedisValue` [INFO] [stdout] --> fast_common/src/utils/redis_util.rs:1:78 [INFO] [stdout] | [INFO] [stdout] 1 | use redis::{AsyncCommands, RedisError, RedisResult, Value, from_redis_value, FromRedisValue}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DerefMut`, `Deref` [INFO] [stdout] --> fast_common/src/config/path_filter.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ops::{DerefMut, Deref}; [INFO] [stdout] | ^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rb` [INFO] [stdout] --> fast_common/src/common/orm_config.rs:47:28 [INFO] [stdout] | [INFO] [stdout] 47 | fn do_intercept(&self, rb: &Rbatis, context_id: &str, sql: &mut String, args: &mut Vec, is_prepared_sql: bool) -> Result<(), E... [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_rb` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context_id` [INFO] [stdout] --> fast_common/src/common/orm_config.rs:47:41 [INFO] [stdout] | [INFO] [stdout] 47 | fn do_intercept(&self, rb: &Rbatis, context_id: &str, sql: &mut String, args: &mut Vec, is_prepared_sql: bool) -> Result<(), E... [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> fast_common/src/common/orm_config.rs:47:77 [INFO] [stdout] | [INFO] [stdout] 47 | ...xt_id: &str, sql: &mut String, args: &mut Vec, is_prepared_sql: bool) -> Result<(), Error> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_prepared_sql` [INFO] [stdout] --> fast_common/src/common/orm_config.rs:47:100 [INFO] [stdout] | [INFO] [stdout] 47 | ...s: &mut Vec, is_prepared_sql: bool) -> Result<(), Error> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_prepared_sql` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> fast_common/src/middleware/handle_method.rs:72:29 [INFO] [stdout] | [INFO] [stdout] 72 | Err(e) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sign` [INFO] [stdout] --> fast_common/src/utils/crypt_util.rs:59:26 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn encode(&self, sign: &str) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `claims` [INFO] [stdout] --> fast_common/src/utils/crypt_util.rs:84:16 [INFO] [stdout] | [INFO] [stdout] 84 | Ok(claims) => { Ok(()) } [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_claims` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `id` [INFO] [stdout] --> fast_common/src/base/base_model.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | id: u64, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `create_time` [INFO] [stdout] --> fast_common/src/base/base_model.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | create_time: std::time::SystemTime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `add` [INFO] [stdout] --> fast_common/src/config/path_filter.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn add(&mut self, path: String) -> &mut PathFilter { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> fast_common/src/config/path_filter.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn new() -> PathFilter { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `tokenData` should have a snake case name [INFO] [stdout] --> fast_common/src/utils/crypt_util.rs:72:16 [INFO] [stdout] | [INFO] [stdout] 72 | Ok(tokenData) => { Ok(tokenData.claims) } [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `token_data` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 35 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling fast_admin v0.1.0 (/opt/rustwide/workdir/fast_admin) [INFO] [stdout] warning: unused import: `fast_common::utils::captcha_util` [INFO] [stdout] --> fast_admin/src/controller/index_controller.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use fast_common::utils::captcha_util; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fast_common::models::user::User` [INFO] [stdout] --> fast_admin/src/service/menu_service.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use fast_common::models::user::User; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fast_common::models::role::RoleVo` [INFO] [stdout] --> fast_admin/src/service/menu_service.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use fast_common::models::role::RoleVo; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> fast_admin/src/service/user_service.rs:2:63 [INFO] [stdout] | [INFO] [stdout] 2 | use fast_common::{common::orm_config::RB, utils::redis_util::{self, RedisUtil}}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `actix_web::HttpResponse` [INFO] [stdout] --> fast_admin/src/service/user_service.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use actix_web::HttpResponse; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Api`, `GlobalError` [INFO] [stdout] --> fast_admin/src/service/user_service.rs:14:39 [INFO] [stdout] | [INFO] [stdout] 14 | use fast_common::common::api_result::{Api, GlobalError}; [INFO] [stdout] | ^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::service::role_service` [INFO] [stdout] --> fast_admin/src/service/user_service.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::service::role_service; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fast_common::models::role::Role` [INFO] [stdout] --> fast_admin/src/service/user_service.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use fast_common::models::role::Role; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fast_common::models::user::User` [INFO] [stdout] --> fast_admin/src/service/role_service.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use fast_common::models::user::User; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RoleVo` [INFO] [stdout] --> fast_admin/src/service/role_service.rs:2:33 [INFO] [stdout] | [INFO] [stdout] 2 | use fast_common::models::role::{RoleVo, Role}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fast_common::models::user_role::UserRole` [INFO] [stdout] --> fast_admin/src/service/role_service.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use fast_common::models::user_role::UserRole; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `request` [INFO] [stdout] --> fast_admin/src/controller/index_controller.rs:14:20 [INFO] [stdout] | [INFO] [stdout] 14 | pub async fn index(request: HttpRequest) -> HttpResponse { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `request` [INFO] [stdout] --> fast_admin/src/controller/user_controller.rs:16:39 [INFO] [stdout] | [INFO] [stdout] 16 | pub async fn list(arg: Query, request: HttpRequest) -> HttpResponse { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `menus` [INFO] [stdout] --> fast_admin/src/service/user_service.rs:96:37 [INFO] [stdout] | [INFO] [stdout] 96 | ... let menus = MenuService::find_menus_by_role(roles.unwrap().id.unwrap()).await; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_menus` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> fast_admin/src/service/user_service.rs:133:17 [INFO] [stdout] | [INFO] [stdout] 133 | Err(err) => { Err("验证码错误".to_string()) } [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> fast_admin/src/controller/index_controller.rs:27:21 [INFO] [stdout] | [INFO] [stdout] 27 | RedisUtil::get_redis_util().await.set_string_expire(&user_name, &png_code.1.iter().collect(), 60).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 8m 12s [INFO] running `Command { std: "docker" "inspect" "9357d10f5bf9b2b48bf9c1d7031f7586ae0555b50c357c44a2f0ed49432a4809", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9357d10f5bf9b2b48bf9c1d7031f7586ae0555b50c357c44a2f0ed49432a4809", kill_on_drop: false }` [INFO] [stdout] 9357d10f5bf9b2b48bf9c1d7031f7586ae0555b50c357c44a2f0ed49432a4809 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b98db3e8077fbf2332cb7b26871616c9bbc12946b6be5a3ef987457f04d53f21 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "b98db3e8077fbf2332cb7b26871616c9bbc12946b6be5a3ef987457f04d53f21", kill_on_drop: false }` [INFO] [stderr] Compiling fast_api v0.1.0 (/opt/rustwide/workdir/fast_api) [INFO] [stderr] Compiling fast_demo v0.1.0 (/opt/rustwide/workdir/fast_demo) [INFO] [stdout] warning: unused imports: `HttpResponse`, `Responder` [INFO] [stdout] --> fast_common/src/common/api_result.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use actix_web::{HttpResponse, Responder}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Expected` [INFO] [stdout] --> fast_common/src/common/api_result.rs:4:35 [INFO] [stdout] | [INFO] [stdout] 4 | use serde::de::{DeserializeOwned, Expected}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Serializer` [INFO] [stdout] --> fast_common/src/common/api_result.rs:5:24 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Serialize, Serializer}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `actix_web::dev::HttpResponseBuilder` [INFO] [stdout] --> fast_common/src/common/api_result.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use actix_web::dev::HttpResponseBuilder; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `actix_http::http::HeaderValue` [INFO] [stdout] --> fast_common/src/common/api_result.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use actix_http::http::HeaderValue; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CONTENT_DISPOSITION` [INFO] [stdout] --> fast_common/src/common/api_result.rs:9:46 [INFO] [stdout] | [INFO] [stdout] 9 | use actix_http::http::header::{CONTENT_TYPE, CONTENT_DISPOSITION, ACCESS_CONTROL_ALLOW_ORIGIN, CACHE_CONTROL}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> fast_common/src/common/api_result.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::__private::de::Content` [INFO] [stdout] --> fast_common/src/common/api_result.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use serde::__private::de::Content; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> fast_common/src/common/api_result.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling fast_common v0.1.0 (/opt/rustwide/workdir/fast_common) [INFO] [stdout] warning: unused imports: `HttpRequest`, `HttpResponse` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:6:31 [INFO] [stdout] | [INFO] [stdout] 6 | use actix_web::{error, Error, HttpRequest, HttpResponse}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling fast_admin v0.1.0 (/opt/rustwide/workdir/fast_admin) [INFO] [stdout] warning: unused import: `GlobalError` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:11:38 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::common::api_result::{Api, GlobalError}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BorrowMut`, `Borrow` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:12:19 [INFO] [stdout] | [INFO] [stdout] 12 | use std::borrow::{Borrow, BorrowMut}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `actix_web::test::ok_service` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use actix_web::test::ok_service; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ResponseBuilder`, `Response` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:14:18 [INFO] [stdout] | [INFO] [stdout] 14 | use actix_http::{Response, ResponseBuilder, body::Body, HttpMessage}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `reqwest::StatusCode` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use reqwest::StatusCode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `validator::HasLen` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use validator::HasLen; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `actix_web::error::ReadlinesError::ContentTypeError` [INFO] [stdout] --> fast_common/src/middleware/handle_method.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use actix_web::error::ReadlinesError::ContentTypeError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::future::Future` [INFO] [stdout] --> fast_common/src/base/base_storage.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::future::Future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Menu` [INFO] [stdout] --> fast_common/src/models/role_menu.rs:2:27 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::models::menu::{Menu, MenuVo}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::models::user_role::UserRole` [INFO] [stdout] --> fast_common/src/models/user.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::models::user_role::UserRole; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Timelike` [INFO] [stdout] --> fast_common/src/utils/crypt_util.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use chrono::{Local, Timelike}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FromRedisValue` [INFO] [stdout] --> fast_common/src/utils/redis_util.rs:1:78 [INFO] [stdout] | [INFO] [stdout] 1 | use redis::{AsyncCommands, RedisError, RedisResult, Value, from_redis_value, FromRedisValue}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DerefMut`, `Deref` [INFO] [stdout] --> fast_common/src/config/path_filter.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ops::{DerefMut, Deref}; [INFO] [stdout] | ^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rb` [INFO] [stdout] --> fast_common/src/common/orm_config.rs:47:28 [INFO] [stdout] | [INFO] [stdout] 47 | fn do_intercept(&self, rb: &Rbatis, context_id: &str, sql: &mut String, args: &mut Vec, is_prepared_sql: bool) -> Result<(), E... [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_rb` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context_id` [INFO] [stdout] --> fast_common/src/common/orm_config.rs:47:41 [INFO] [stdout] | [INFO] [stdout] 47 | fn do_intercept(&self, rb: &Rbatis, context_id: &str, sql: &mut String, args: &mut Vec, is_prepared_sql: bool) -> Result<(), E... [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> fast_common/src/common/orm_config.rs:47:77 [INFO] [stdout] | [INFO] [stdout] 47 | ...xt_id: &str, sql: &mut String, args: &mut Vec, is_prepared_sql: bool) -> Result<(), Error> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_prepared_sql` [INFO] [stdout] --> fast_common/src/common/orm_config.rs:47:100 [INFO] [stdout] | [INFO] [stdout] 47 | ...s: &mut Vec, is_prepared_sql: bool) -> Result<(), Error> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_prepared_sql` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> fast_common/src/middleware/handle_method.rs:72:29 [INFO] [stdout] | [INFO] [stdout] 72 | Err(e) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sign` [INFO] [stdout] --> fast_common/src/utils/crypt_util.rs:59:26 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn encode(&self, sign: &str) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `claims` [INFO] [stdout] --> fast_common/src/utils/crypt_util.rs:84:16 [INFO] [stdout] | [INFO] [stdout] 84 | Ok(claims) => { Ok(()) } [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_claims` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `id` [INFO] [stdout] --> fast_common/src/base/base_model.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | id: u64, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `create_time` [INFO] [stdout] --> fast_common/src/base/base_model.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | create_time: std::time::SystemTime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `add` [INFO] [stdout] --> fast_common/src/config/path_filter.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn add(&mut self, path: String) -> &mut PathFilter { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> fast_common/src/config/path_filter.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn new() -> PathFilter { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `tokenData` should have a snake case name [INFO] [stdout] --> fast_common/src/utils/crypt_util.rs:72:16 [INFO] [stdout] | [INFO] [stdout] 72 | Ok(tokenData) => { Ok(tokenData.claims) } [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `token_data` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 35 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Debug, Serialize, Deserialize, Clone, PartialEq)] pub struct Menu [INFO] [stdout] { [INFO] [stdout] pub id : Option < u64 >, pub menu_name : Option < String >, pub parent_id [INFO] [stdout] : Option < u64 >, pub path : Option < String >, pub icon : Option < String [INFO] [stdout] >, pub index_no : Option < i32 >, pub remark : Option < String >, pub [INFO] [stdout] state : Option < i32 >, pub create_time : Option < NaiveDateTime >, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for Menu [INFO] [stdout] { [INFO] [stdout] type IdType = u64 ; fn id_name() -> String { "id".to_string() } fn [INFO] [stdout] get_id(& self) -> Option < & Self :: IdType > { self.id.as_ref() } fn [INFO] [stdout] table_name() -> String { "menu".to_string() } fn table_columns() -> String [INFO] [stdout] { [INFO] [stdout] "id,menu_name,parent_id,path,icon,index_no,remark,state,create_time".to_string() [INFO] [stdout] } fn formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, fn(arg : & str) -> String > [INFO] [stdout] { [INFO] [stdout] let mut m = std :: collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] warning: unused import: `fast_common::utils::captcha_util` [INFO] [stdout] --> fast_admin/src/controller/index_controller.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use fast_common::utils::captcha_util; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fast_common::models::user::User` [INFO] [stdout] --> fast_admin/src/service/menu_service.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use fast_common::models::user::User; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fast_common::models::role::RoleVo` [INFO] [stdout] --> fast_admin/src/service/menu_service.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use fast_common::models::role::RoleVo; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> fast_admin/src/service/user_service.rs:2:63 [INFO] [stdout] | [INFO] [stdout] 2 | use fast_common::{common::orm_config::RB, utils::redis_util::{self, RedisUtil}}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `actix_web::HttpResponse` [INFO] [stdout] --> fast_admin/src/service/user_service.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use actix_web::HttpResponse; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Api`, `GlobalError` [INFO] [stdout] --> fast_admin/src/service/user_service.rs:14:39 [INFO] [stdout] | [INFO] [stdout] 14 | use fast_common::common::api_result::{Api, GlobalError}; [INFO] [stdout] | ^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::service::role_service` [INFO] [stdout] --> fast_admin/src/service/user_service.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::service::role_service; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fast_common::models::role::Role` [INFO] [stdout] --> fast_admin/src/service/user_service.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use fast_common::models::role::Role; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fast_common::models::user::User` [INFO] [stdout] --> fast_admin/src/service/role_service.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use fast_common::models::user::User; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RoleVo` [INFO] [stdout] --> fast_admin/src/service/role_service.rs:2:33 [INFO] [stdout] | [INFO] [stdout] 2 | use fast_common::models::role::{RoleVo, Role}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fast_common::models::user_role::UserRole` [INFO] [stdout] --> fast_admin/src/service/role_service.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use fast_common::models::user_role::UserRole; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Debug, Serialize, Deserialize, Clone, PartialEq)] pub struct Role [INFO] [stdout] { [INFO] [stdout] pub id : Option < u64 >, pub role_name : Option < String >, pub index_no : [INFO] [stdout] Option < i32 >, pub remark : Option < String >, pub state : Option < i32 [INFO] [stdout] >, pub create_time : Option < NaiveDateTime >, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for Role [INFO] [stdout] { [INFO] [stdout] type IdType = u64 ; fn id_name() -> String { "id".to_string() } fn [INFO] [stdout] get_id(& self) -> Option < & Self :: IdType > { self.id.as_ref() } fn [INFO] [stdout] table_name() -> String { "role".to_string() } fn table_columns() -> String [INFO] [stdout] { "id,role_name,index_no,remark,state,create_time".to_string() } fn [INFO] [stdout] formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, fn(arg : & str) -> String > [INFO] [stdout] { [INFO] [stdout] let mut m = std :: collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Debug, Serialize, Deserialize, Clone, PartialEq)] pub struct User [INFO] [stdout] { [INFO] [stdout] pub id : Option < u64 >, pub user_name : Option < String >, pub age : [INFO] [stdout] Option < u64 >, pub create_time : Option < NaiveDateTime >, pub password : [INFO] [stdout] Option < String >, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for User [INFO] [stdout] { [INFO] [stdout] type IdType = u64 ; fn id_name() -> String { "id".to_string() } fn [INFO] [stdout] get_id(& self) -> Option < & Self :: IdType > { self.id.as_ref() } fn [INFO] [stdout] table_name() -> String { "user".to_string() } fn table_columns() -> String [INFO] [stdout] { "id,user_name,age,create_time,password".to_string() } fn [INFO] [stdout] formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, fn(arg : & str) -> String > [INFO] [stdout] { [INFO] [stdout] let mut m = std :: collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] warning: unused imports: `HttpResponse`, `Responder` [INFO] [stdout] --> fast_common/src/common/api_result.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use actix_web::{HttpResponse, Responder}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Expected` [INFO] [stdout] --> fast_common/src/common/api_result.rs:4:35 [INFO] [stdout] | [INFO] [stdout] 4 | use serde::de::{DeserializeOwned, Expected}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Serializer` [INFO] [stdout] --> fast_common/src/common/api_result.rs:5:24 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Serialize, Serializer}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `actix_web::dev::HttpResponseBuilder` [INFO] [stdout] --> fast_common/src/common/api_result.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use actix_web::dev::HttpResponseBuilder; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `actix_http::http::HeaderValue` [INFO] [stdout] --> fast_common/src/common/api_result.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use actix_http::http::HeaderValue; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CONTENT_DISPOSITION` [INFO] [stdout] --> fast_common/src/common/api_result.rs:9:46 [INFO] [stdout] | [INFO] [stdout] 9 | use actix_http::http::header::{CONTENT_TYPE, CONTENT_DISPOSITION, ACCESS_CONTROL_ALLOW_ORIGIN, CACHE_CONTROL}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> fast_common/src/common/api_result.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::__private::de::Content` [INFO] [stdout] --> fast_common/src/common/api_result.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use serde::__private::de::Content; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> fast_common/src/common/api_result.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HttpRequest`, `HttpResponse` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:6:31 [INFO] [stdout] | [INFO] [stdout] 6 | use actix_web::{error, Error, HttpRequest, HttpResponse}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GlobalError` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:11:38 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::common::api_result::{Api, GlobalError}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BorrowMut`, `Borrow` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:12:19 [INFO] [stdout] | [INFO] [stdout] 12 | use std::borrow::{Borrow, BorrowMut}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `actix_web::test::ok_service` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use actix_web::test::ok_service; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ResponseBuilder`, `Response` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:14:18 [INFO] [stdout] | [INFO] [stdout] 14 | use actix_http::{Response, ResponseBuilder, body::Body, HttpMessage}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `reqwest::StatusCode` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use reqwest::StatusCode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `validator::HasLen` [INFO] [stdout] --> fast_common/src/middleware/auth.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use validator::HasLen; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `actix_web::error::ReadlinesError::ContentTypeError` [INFO] [stdout] --> fast_common/src/middleware/handle_method.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use actix_web::error::ReadlinesError::ContentTypeError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::future::Future` [INFO] [stdout] --> fast_common/src/base/base_storage.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::future::Future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Menu` [INFO] [stdout] --> fast_common/src/models/role_menu.rs:2:27 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::models::menu::{Menu, MenuVo}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::models::user_role::UserRole` [INFO] [stdout] --> fast_common/src/models/user.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::models::user_role::UserRole; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Timelike` [INFO] [stdout] --> fast_common/src/utils/crypt_util.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use chrono::{Local, Timelike}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FromRedisValue` [INFO] [stdout] --> fast_common/src/utils/redis_util.rs:1:78 [INFO] [stdout] | [INFO] [stdout] 1 | use redis::{AsyncCommands, RedisError, RedisResult, Value, from_redis_value, FromRedisValue}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DerefMut`, `Deref` [INFO] [stdout] --> fast_common/src/config/path_filter.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ops::{DerefMut, Deref}; [INFO] [stdout] | ^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `request` [INFO] [stdout] --> fast_admin/src/controller/index_controller.rs:14:20 [INFO] [stdout] | [INFO] [stdout] 14 | pub async fn index(request: HttpRequest) -> HttpResponse { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `request` [INFO] [stdout] --> fast_admin/src/controller/user_controller.rs:16:39 [INFO] [stdout] | [INFO] [stdout] 16 | pub async fn list(arg: Query, request: HttpRequest) -> HttpResponse { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `menus` [INFO] [stdout] --> fast_admin/src/service/user_service.rs:96:37 [INFO] [stdout] | [INFO] [stdout] 96 | ... let menus = MenuService::find_menus_by_role(roles.unwrap().id.unwrap()).await; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_menus` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> fast_admin/src/service/user_service.rs:133:17 [INFO] [stdout] | [INFO] [stdout] 133 | Err(err) => { Err("验证码错误".to_string()) } [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> fast_admin/src/controller/index_controller.rs:27:21 [INFO] [stdout] | [INFO] [stdout] 27 | RedisUtil::get_redis_util().await.set_string_expire(&user_name, &png_code.1.iter().collect(), 60).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rb` [INFO] [stdout] --> fast_common/src/common/orm_config.rs:47:28 [INFO] [stdout] | [INFO] [stdout] 47 | fn do_intercept(&self, rb: &Rbatis, context_id: &str, sql: &mut String, args: &mut Vec, is_prepared_sql: bool) -> Result<(), E... [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_rb` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context_id` [INFO] [stdout] --> fast_common/src/common/orm_config.rs:47:41 [INFO] [stdout] | [INFO] [stdout] 47 | fn do_intercept(&self, rb: &Rbatis, context_id: &str, sql: &mut String, args: &mut Vec, is_prepared_sql: bool) -> Result<(), E... [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> fast_common/src/common/orm_config.rs:47:77 [INFO] [stdout] | [INFO] [stdout] 47 | ...xt_id: &str, sql: &mut String, args: &mut Vec, is_prepared_sql: bool) -> Result<(), Error> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_prepared_sql` [INFO] [stdout] --> fast_common/src/common/orm_config.rs:47:100 [INFO] [stdout] | [INFO] [stdout] 47 | ...s: &mut Vec, is_prepared_sql: bool) -> Result<(), Error> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_prepared_sql` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> fast_common/src/middleware/handle_method.rs:72:29 [INFO] [stdout] | [INFO] [stdout] 72 | Err(e) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sign` [INFO] [stdout] --> fast_common/src/utils/crypt_util.rs:59:26 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn encode(&self, sign: &str) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `claims` [INFO] [stdout] --> fast_common/src/utils/crypt_util.rs:84:16 [INFO] [stdout] | [INFO] [stdout] 84 | Ok(claims) => { Ok(()) } [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_claims` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> fast_common/src/config/path_filter.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | let x = t.add("abc".to_string()).add("bcd".to_owned()); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `id` [INFO] [stdout] --> fast_common/src/base/base_model.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | id: u64, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `create_time` [INFO] [stdout] --> fast_common/src/base/base_model.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | create_time: std::time::SystemTime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `tokenData` should have a snake case name [INFO] [stdout] --> fast_common/src/utils/crypt_util.rs:72:16 [INFO] [stdout] | [INFO] [stdout] 72 | Ok(tokenData) => { Ok(tokenData.claims) } [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `token_data` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 34 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 18.86s [INFO] running `Command { std: "docker" "inspect" "b98db3e8077fbf2332cb7b26871616c9bbc12946b6be5a3ef987457f04d53f21", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b98db3e8077fbf2332cb7b26871616c9bbc12946b6be5a3ef987457f04d53f21", kill_on_drop: false }` [INFO] [stdout] b98db3e8077fbf2332cb7b26871616c9bbc12946b6be5a3ef987457f04d53f21 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 239c9806e001aca28b4e496bcce2d9b8465920387705fe0c53263bd980c26fe8 [INFO] running `Command { std: "docker" "start" "-a" "239c9806e001aca28b4e496bcce2d9b8465920387705fe0c53263bd980c26fe8", kill_on_drop: false }` [INFO] [stderr] warning: unused imports: `HttpResponse`, `Responder` [INFO] [stderr] --> fast_common/src/common/api_result.rs:2:17 [INFO] [stderr] | [INFO] [stderr] 2 | use actix_web::{HttpResponse, Responder}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Expected` [INFO] [stderr] --> fast_common/src/common/api_result.rs:4:35 [INFO] [stderr] | [INFO] [stderr] 4 | use serde::de::{DeserializeOwned, Expected}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Serializer` [INFO] [stderr] --> fast_common/src/common/api_result.rs:5:24 [INFO] [stderr] | [INFO] [stderr] 5 | use serde::{Serialize, Serializer}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `actix_web::dev::HttpResponseBuilder` [INFO] [stderr] --> fast_common/src/common/api_result.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use actix_web::dev::HttpResponseBuilder; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `actix_http::http::HeaderValue` [INFO] [stderr] --> fast_common/src/common/api_result.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use actix_http::http::HeaderValue; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `CONTENT_DISPOSITION` [INFO] [stderr] --> fast_common/src/common/api_result.rs:9:46 [INFO] [stderr] | [INFO] [stderr] 9 | use actix_http::http::header::{CONTENT_TYPE, CONTENT_DISPOSITION, ACCESS_CONTROL_ALLOW_ORIGIN, CACHE_CONTROL}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> fast_common/src/common/api_result.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde::__private::de::Content` [INFO] [stderr] --> fast_common/src/common/api_result.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use serde::__private::de::Content; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::error::Error` [INFO] [stderr] --> fast_common/src/common/api_result.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use std::error::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `HttpRequest`, `HttpResponse` [INFO] [stderr] --> fast_common/src/middleware/auth.rs:6:31 [INFO] [stderr] | [INFO] [stderr] 6 | use actix_web::{error, Error, HttpRequest, HttpResponse}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `GlobalError` [INFO] [stderr] --> fast_common/src/middleware/auth.rs:11:38 [INFO] [stderr] | [INFO] [stderr] 11 | use crate::common::api_result::{Api, GlobalError}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BorrowMut`, `Borrow` [INFO] [stderr] --> fast_common/src/middleware/auth.rs:12:19 [INFO] [stderr] | [INFO] [stderr] 12 | use std::borrow::{Borrow, BorrowMut}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `actix_web::test::ok_service` [INFO] [stderr] --> fast_common/src/middleware/auth.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use actix_web::test::ok_service; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ResponseBuilder`, `Response` [INFO] [stderr] --> fast_common/src/middleware/auth.rs:14:18 [INFO] [stderr] | [INFO] [stderr] 14 | use actix_http::{Response, ResponseBuilder, body::Body, HttpMessage}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `reqwest::StatusCode` [INFO] [stderr] --> fast_common/src/middleware/auth.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use reqwest::StatusCode; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `validator::HasLen` [INFO] [stderr] --> fast_common/src/middleware/auth.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use validator::HasLen; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `actix_web::error::ReadlinesError::ContentTypeError` [INFO] [stderr] --> fast_common/src/middleware/handle_method.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use actix_web::error::ReadlinesError::ContentTypeError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::future::Future` [INFO] [stderr] --> fast_common/src/base/base_storage.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::future::Future; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Menu` [INFO] [stderr] --> fast_common/src/models/role_menu.rs:2:27 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::models::menu::{Menu, MenuVo}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::models::user_role::UserRole` [INFO] [stderr] --> fast_common/src/models/user.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::models::user_role::UserRole; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Timelike` [INFO] [stderr] --> fast_common/src/utils/crypt_util.rs:4:21 [INFO] [stderr] | [INFO] [stderr] 4 | use chrono::{Local, Timelike}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `FromRedisValue` [INFO] [stderr] --> fast_common/src/utils/redis_util.rs:1:78 [INFO] [stderr] | [INFO] [stderr] 1 | use redis::{AsyncCommands, RedisError, RedisResult, Value, from_redis_value, FromRedisValue}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `DerefMut`, `Deref` [INFO] [stderr] --> fast_common/src/config/path_filter.rs:1:16 [INFO] [stderr] | [INFO] [stderr] 1 | use std::ops::{DerefMut, Deref}; [INFO] [stderr] | ^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rb` [INFO] [stderr] --> fast_common/src/common/orm_config.rs:47:28 [INFO] [stderr] | [INFO] [stderr] 47 | fn do_intercept(&self, rb: &Rbatis, context_id: &str, sql: &mut String, args: &mut Vec, is_prepared_sql: bool) -> Result<(), E... [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_rb` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `context_id` [INFO] [stderr] --> fast_common/src/common/orm_config.rs:47:41 [INFO] [stderr] | [INFO] [stderr] 47 | fn do_intercept(&self, rb: &Rbatis, context_id: &str, sql: &mut String, args: &mut Vec, is_prepared_sql: bool) -> Result<(), E... [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context_id` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `args` [INFO] [stderr] --> fast_common/src/common/orm_config.rs:47:77 [INFO] [stderr] | [INFO] [stderr] 47 | ...xt_id: &str, sql: &mut String, args: &mut Vec, is_prepared_sql: bool) -> Result<(), Error> { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `is_prepared_sql` [INFO] [stderr] --> fast_common/src/common/orm_config.rs:47:100 [INFO] [stderr] | [INFO] [stderr] 47 | ...s: &mut Vec, is_prepared_sql: bool) -> Result<(), Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_prepared_sql` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> fast_common/src/middleware/handle_method.rs:72:29 [INFO] [stderr] | [INFO] [stderr] 72 | Err(e) => { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sign` [INFO] [stderr] --> fast_common/src/utils/crypt_util.rs:59:26 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn encode(&self, sign: &str) -> Result { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_sign` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `claims` [INFO] [stderr] --> fast_common/src/utils/crypt_util.rs:84:16 [INFO] [stderr] | [INFO] [stderr] 84 | Ok(claims) => { Ok(()) } [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_claims` [INFO] [stderr] [INFO] [stderr] warning: field is never read: `id` [INFO] [stderr] --> fast_common/src/base/base_model.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | id: u64, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field is never read: `create_time` [INFO] [stderr] --> fast_common/src/base/base_model.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | create_time: std::time::SystemTime, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `add` [INFO] [stderr] --> fast_common/src/config/path_filter.rs:9:12 [INFO] [stderr] | [INFO] [stderr] 9 | pub fn add(&mut self, path: String) -> &mut PathFilter { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> fast_common/src/config/path_filter.rs:14:12 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn new() -> PathFilter { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `tokenData` should have a snake case name [INFO] [stderr] --> fast_common/src/utils/crypt_util.rs:72:16 [INFO] [stderr] | [INFO] [stderr] 72 | Ok(tokenData) => { Ok(tokenData.claims) } [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `token_data` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 35 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused imports: `HttpResponse`, `Responder` [INFO] [stderr] --> fast_common/src/common/api_result.rs:2:17 [INFO] [stderr] | [INFO] [stderr] 2 | use actix_web::{HttpResponse, Responder}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Expected` [INFO] [stderr] --> fast_common/src/common/api_result.rs:4:35 [INFO] [stderr] | [INFO] [stderr] 4 | use serde::de::{DeserializeOwned, Expected}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Serializer` [INFO] [stderr] --> fast_common/src/common/api_result.rs:5:24 [INFO] [stderr] | [INFO] [stderr] 5 | use serde::{Serialize, Serializer}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `actix_web::dev::HttpResponseBuilder` [INFO] [stderr] --> fast_common/src/common/api_result.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use actix_web::dev::HttpResponseBuilder; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `actix_http::http::HeaderValue` [INFO] [stderr] --> fast_common/src/common/api_result.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use actix_http::http::HeaderValue; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `CONTENT_DISPOSITION` [INFO] [stderr] --> fast_common/src/common/api_result.rs:9:46 [INFO] [stderr] | [INFO] [stderr] 9 | use actix_http::http::header::{CONTENT_TYPE, CONTENT_DISPOSITION, ACCESS_CONTROL_ALLOW_ORIGIN, CACHE_CONTROL}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> fast_common/src/common/api_result.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde::__private::de::Content` [INFO] [stderr] --> fast_common/src/common/api_result.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use serde::__private::de::Content; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::error::Error` [INFO] [stderr] --> fast_common/src/common/api_result.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use std::error::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `HttpRequest`, `HttpResponse` [INFO] [stderr] --> fast_common/src/middleware/auth.rs:6:31 [INFO] [stderr] | [INFO] [stderr] 6 | use actix_web::{error, Error, HttpRequest, HttpResponse}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `GlobalError` [INFO] [stderr] --> fast_common/src/middleware/auth.rs:11:38 [INFO] [stderr] | [INFO] [stderr] 11 | use crate::common::api_result::{Api, GlobalError}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BorrowMut`, `Borrow` [INFO] [stderr] --> fast_common/src/middleware/auth.rs:12:19 [INFO] [stderr] | [INFO] [stderr] 12 | use std::borrow::{Borrow, BorrowMut}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `actix_web::test::ok_service` [INFO] [stderr] --> fast_common/src/middleware/auth.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use actix_web::test::ok_service; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ResponseBuilder`, `Response` [INFO] [stderr] --> fast_common/src/middleware/auth.rs:14:18 [INFO] [stderr] | [INFO] [stderr] 14 | use actix_http::{Response, ResponseBuilder, body::Body, HttpMessage}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `reqwest::StatusCode` [INFO] [stderr] --> fast_common/src/middleware/auth.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use reqwest::StatusCode; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `validator::HasLen` [INFO] [stderr] --> fast_common/src/middleware/auth.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use validator::HasLen; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `actix_web::error::ReadlinesError::ContentTypeError` [INFO] [stderr] --> fast_common/src/middleware/handle_method.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use actix_web::error::ReadlinesError::ContentTypeError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::future::Future` [INFO] [stderr] --> fast_common/src/base/base_storage.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::future::Future; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Menu` [INFO] [stderr] --> fast_common/src/models/role_menu.rs:2:27 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::models::menu::{Menu, MenuVo}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::models::user_role::UserRole` [INFO] [stderr] --> fast_common/src/models/user.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::models::user_role::UserRole; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Timelike` [INFO] [stderr] --> fast_common/src/utils/crypt_util.rs:4:21 [INFO] [stderr] | [INFO] [stderr] 4 | use chrono::{Local, Timelike}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `FromRedisValue` [INFO] [stderr] --> fast_common/src/utils/redis_util.rs:1:78 [INFO] [stderr] | [INFO] [stderr] 1 | use redis::{AsyncCommands, RedisError, RedisResult, Value, from_redis_value, FromRedisValue}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `DerefMut`, `Deref` [INFO] [stderr] --> fast_common/src/config/path_filter.rs:1:16 [INFO] [stderr] | [INFO] [stderr] 1 | use std::ops::{DerefMut, Deref}; [INFO] [stderr] | ^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rb` [INFO] [stderr] --> fast_common/src/common/orm_config.rs:47:28 [INFO] [stderr] | [INFO] [stderr] 47 | fn do_intercept(&self, rb: &Rbatis, context_id: &str, sql: &mut String, args: &mut Vec, is_prepared_sql: bool) -> Result<(), E... [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_rb` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `context_id` [INFO] [stderr] --> fast_common/src/common/orm_config.rs:47:41 [INFO] [stderr] | [INFO] [stderr] 47 | fn do_intercept(&self, rb: &Rbatis, context_id: &str, sql: &mut String, args: &mut Vec, is_prepared_sql: bool) -> Result<(), E... [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context_id` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `args` [INFO] [stderr] --> fast_common/src/common/orm_config.rs:47:77 [INFO] [stderr] | [INFO] [stderr] 47 | ...xt_id: &str, sql: &mut String, args: &mut Vec, is_prepared_sql: bool) -> Result<(), Error> { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `is_prepared_sql` [INFO] [stderr] --> fast_common/src/common/orm_config.rs:47:100 [INFO] [stderr] | [INFO] [stderr] 47 | ...s: &mut Vec, is_prepared_sql: bool) -> Result<(), Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_prepared_sql` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> fast_common/src/middleware/handle_method.rs:72:29 [INFO] [stderr] | [INFO] [stderr] 72 | Err(e) => { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sign` [INFO] [stderr] --> fast_common/src/utils/crypt_util.rs:59:26 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn encode(&self, sign: &str) -> Result { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_sign` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `claims` [INFO] [stderr] --> fast_common/src/utils/crypt_util.rs:84:16 [INFO] [stderr] | [INFO] [stderr] 84 | Ok(claims) => { Ok(()) } [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_claims` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> fast_common/src/config/path_filter.rs:23:9 [INFO] [stderr] | [INFO] [stderr] 23 | let x = t.add("abc".to_string()).add("bcd".to_owned()); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stderr] [INFO] [stderr] warning: field is never read: `id` [INFO] [stderr] --> fast_common/src/base/base_model.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | id: u64, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field is never read: `create_time` [INFO] [stderr] --> fast_common/src/base/base_model.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | create_time: std::time::SystemTime, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `tokenData` should have a snake case name [INFO] [stderr] --> fast_common/src/utils/crypt_util.rs:72:16 [INFO] [stderr] | [INFO] [stderr] 72 | Ok(tokenData) => { Ok(tokenData.claims) } [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `token_data` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 34 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused import: `fast_common::utils::captcha_util` [INFO] [stderr] --> fast_admin/src/controller/index_controller.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use fast_common::utils::captcha_util; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `fast_common::models::user::User` [INFO] [stderr] --> fast_admin/src/service/menu_service.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use fast_common::models::user::User; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `fast_common::models::role::RoleVo` [INFO] [stderr] --> fast_admin/src/service/menu_service.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use fast_common::models::role::RoleVo; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self` [INFO] [stderr] --> fast_admin/src/service/user_service.rs:2:63 [INFO] [stderr] | [INFO] [stderr] 2 | use fast_common::{common::orm_config::RB, utils::redis_util::{self, RedisUtil}}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `actix_web::HttpResponse` [INFO] [stderr] --> fast_admin/src/service/user_service.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use actix_web::HttpResponse; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Api`, `GlobalError` [INFO] [stderr] --> fast_admin/src/service/user_service.rs:14:39 [INFO] [stderr] | [INFO] [stderr] 14 | use fast_common::common::api_result::{Api, GlobalError}; [INFO] [stderr] | ^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::service::role_service` [INFO] [stderr] --> fast_admin/src/service/user_service.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use crate::service::role_service; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `fast_common::models::role::Role` [INFO] [stderr] --> fast_admin/src/service/user_service.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | use fast_common::models::role::Role; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `fast_common::models::user::User` [INFO] [stderr] --> fast_admin/src/service/role_service.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use fast_common::models::user::User; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `RoleVo` [INFO] [stderr] --> fast_admin/src/service/role_service.rs:2:33 [INFO] [stderr] | [INFO] [stderr] 2 | use fast_common::models::role::{RoleVo, Role}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `fast_common::models::user_role::UserRole` [INFO] [stderr] --> fast_admin/src/service/role_service.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use fast_common::models::user_role::UserRole; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `request` [INFO] [stderr] --> fast_admin/src/controller/index_controller.rs:14:20 [INFO] [stderr] | [INFO] [stderr] 14 | pub async fn index(request: HttpRequest) -> HttpResponse { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `request` [INFO] [stderr] --> fast_admin/src/controller/user_controller.rs:16:39 [INFO] [stderr] | [INFO] [stderr] 16 | pub async fn list(arg: Query, request: HttpRequest) -> HttpResponse { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `menus` [INFO] [stderr] --> fast_admin/src/service/user_service.rs:96:37 [INFO] [stderr] | [INFO] [stderr] 96 | ... let menus = MenuService::find_menus_by_role(roles.unwrap().id.unwrap()).await; [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_menus` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `err` [INFO] [stderr] --> fast_admin/src/service/user_service.rs:133:17 [INFO] [stderr] | [INFO] [stderr] 133 | Err(err) => { Err("验证码错误".to_string()) } [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> fast_admin/src/controller/index_controller.rs:27:21 [INFO] [stderr] | [INFO] [stderr] 27 | RedisUtil::get_redis_util().await.set_string_expire(&user_name, &png_code.1.iter().collect(), 60).await; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: 16 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.18s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/fast_admin-1bb8ba8bb5ad4a3d) [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/fast_api-db738ac3a69aed36) [INFO] [stdout] running 1 test [INFO] [stdout] test service::user_service::test ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/fast_common-07caa83283e33fef) [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] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test config::path_filter::test ... ok [INFO] [stdout] test utils::crypt_util::test ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/fast_demo-ba51ae8dc9094986) [INFO] [stdout] [INFO] [stderr] Doc-tests fast_common [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] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Debug, Serialize, Deserialize, Clone, PartialEq)] pub struct Menu [INFO] [stdout] { [INFO] [stdout] pub id : Option < u64 >, pub menu_name : Option < String >, pub parent_id [INFO] [stdout] : Option < u64 >, pub path : Option < String >, pub icon : Option < String [INFO] [stdout] >, pub index_no : Option < i32 >, pub remark : Option < String >, pub [INFO] [stdout] state : Option < i32 >, pub create_time : Option < NaiveDateTime >, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for Menu [INFO] [stdout] { [INFO] [stdout] type IdType = u64 ; fn id_name() -> String { "id".to_string() } fn [INFO] [stdout] get_id(& self) -> Option < & Self :: IdType > { self.id.as_ref() } fn [INFO] [stdout] table_name() -> String { "menu".to_string() } fn table_columns() -> String [INFO] [stdout] { [INFO] [stdout] "id,menu_name,parent_id,path,icon,index_no,remark,state,create_time".to_string() [INFO] [stdout] } fn formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, fn(arg : & str) -> String > [INFO] [stdout] { [INFO] [stdout] let mut m = std :: collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Debug, Serialize, Deserialize, Clone, PartialEq)] pub struct Role [INFO] [stdout] { [INFO] [stdout] pub id : Option < u64 >, pub role_name : Option < String >, pub index_no : [INFO] [stdout] Option < i32 >, pub remark : Option < String >, pub state : Option < i32 [INFO] [stdout] >, pub create_time : Option < NaiveDateTime >, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for Role [INFO] [stdout] { [INFO] [stdout] type IdType = u64 ; fn id_name() -> String { "id".to_string() } fn [INFO] [stdout] get_id(& self) -> Option < & Self :: IdType > { self.id.as_ref() } fn [INFO] [stdout] table_name() -> String { "role".to_string() } fn table_columns() -> String [INFO] [stdout] { "id,role_name,index_no,remark,state,create_time".to_string() } fn [INFO] [stdout] formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, fn(arg : & str) -> String > [INFO] [stdout] { [INFO] [stdout] let mut m = std :: collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Debug, Serialize, Deserialize, Clone, PartialEq)] pub struct User [INFO] [stdout] { [INFO] [stdout] pub id : Option < u64 >, pub user_name : Option < String >, pub age : [INFO] [stdout] Option < u64 >, pub create_time : Option < NaiveDateTime >, pub password : [INFO] [stdout] Option < String >, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for User [INFO] [stdout] { [INFO] [stdout] type IdType = u64 ; fn id_name() -> String { "id".to_string() } fn [INFO] [stdout] get_id(& self) -> Option < & Self :: IdType > { self.id.as_ref() } fn [INFO] [stdout] table_name() -> String { "user".to_string() } fn table_columns() -> String [INFO] [stdout] { "id,user_name,age,create_time,password".to_string() } fn [INFO] [stdout] formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, fn(arg : & str) -> String > [INFO] [stdout] { [INFO] [stdout] let mut m = std :: collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [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" "239c9806e001aca28b4e496bcce2d9b8465920387705fe0c53263bd980c26fe8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "239c9806e001aca28b4e496bcce2d9b8465920387705fe0c53263bd980c26fe8", kill_on_drop: false }` [INFO] [stdout] 239c9806e001aca28b4e496bcce2d9b8465920387705fe0c53263bd980c26fe8