[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#722e1797249a965b6335aebd65d777f917e498f1 for pr-91031 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaking-rockets%2Ffast_rust" "/workspace/builds/worker-1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/making-rockets/fast_rust on toolchain 722e1797249a965b6335aebd65d777f917e498f1 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+722e1797249a965b6335aebd65d777f917e498f1" "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-1/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" "+722e1797249a965b6335aebd65d777f917e498f1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded debug-helper v0.3.10 [INFO] [stderr] Downloaded crc-any v2.3.5 [INFO] [stderr] Downloaded if_chain v1.0.1 [INFO] [stderr] Downloaded whoami v1.1.0 [INFO] [stderr] Downloaded rexpr v1.0.7 [INFO] [stderr] Downloaded checked_int_cast v1.0.0 [INFO] [stderr] Downloaded zip v0.5.6 [INFO] [stderr] Downloaded qrcode v0.12.0 [INFO] [stderr] Downloaded fallible_collections v0.4.0 [INFO] [stderr] Downloaded lodepng v3.4.5 [INFO] [stderr] Downloaded async_once v0.2.1 [INFO] [stderr] Downloaded deadpool v0.6.0 [INFO] [stderr] Downloaded py_sql v1.0.1 [INFO] [stderr] Downloaded validator_derive v0.12.0 [INFO] [stderr] Downloaded base64-url v1.4.9 [INFO] [stderr] Downloaded tokio v0.3.7 [INFO] [stderr] Downloaded nb-connect v1.0.3 [INFO] [stderr] Downloaded signal-hook v0.3.7 [INFO] [stderr] Downloaded num-bigint-dig v0.6.1 [INFO] [stderr] Downloaded libsqlite3-sys v0.20.1 [INFO] [stderr] Downloaded redis v0.17.0 [INFO] [stderr] Downloaded captcha v0.0.8 [INFO] [stderr] Downloaded rust_decimal v1.10.3 [INFO] [stderr] Downloaded async-rustls v0.2.0 [INFO] [stderr] Downloaded fast_log v1.3.23 [INFO] [stderr] Downloaded short-crypt v1.0.23 [INFO] [stderr] Downloaded rustflake v0.1.1 [INFO] [stderr] Downloaded rbatis-core v1.8.70 [INFO] [stderr] Downloaded rbatis v1.8.74 [INFO] [stderr] Downloaded rsa v0.3.0 [INFO] [stderr] Downloaded rbatis-macro-driver v1.8.78 [INFO] [stderr] Downloaded redis-async-pool v0.2.4 [INFO] [stderr] Downloaded toml_edit v0.2.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+722e1797249a965b6335aebd65d777f917e498f1" "metadata" "--no-deps" "--format-version=1", 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] 3b77a7bcf36bfb691f81ab43aeb4c1f07ae83cdc03876f3a3bdc0e7630295539 [INFO] running `Command { std: "docker" "start" "-a" "3b77a7bcf36bfb691f81ab43aeb4c1f07ae83cdc03876f3a3bdc0e7630295539", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3b77a7bcf36bfb691f81ab43aeb4c1f07ae83cdc03876f3a3bdc0e7630295539", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3b77a7bcf36bfb691f81ab43aeb4c1f07ae83cdc03876f3a3bdc0e7630295539", kill_on_drop: false }` [INFO] [stdout] 3b77a7bcf36bfb691f81ab43aeb4c1f07ae83cdc03876f3a3bdc0e7630295539 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+722e1797249a965b6335aebd65d777f917e498f1" "build" "--frozen" "--message-format=json", 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] 96ffda8a1c65a1bc3c65dc9ccf9a0c860e26528c318a48b6635e5197d080415b [INFO] running `Command { std: "docker" "start" "-a" "96ffda8a1c65a1bc3c65dc9ccf9a0c860e26528c318a48b6635e5197d080415b", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.88 [INFO] [stderr] Compiling syn v1.0.63 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling autocfg v1.0.1 [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 v1.0.124 [INFO] [stderr] Compiling futures-io v0.3.13 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling slab v0.4.2 [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Compiling once_cell v1.7.2 [INFO] [stderr] Compiling futures-sink v0.3.13 [INFO] [stderr] Compiling ryu v1.0.5 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling smallvec v1.6.1 [INFO] [stderr] Compiling matches v0.1.8 [INFO] [stderr] Compiling serde_json v1.0.64 [INFO] [stderr] Compiling byteorder v1.4.3 [INFO] [stderr] Compiling tinyvec_macros v0.1.0 [INFO] [stderr] Compiling ahash v0.4.7 [INFO] [stderr] Compiling pin-project-lite v0.1.12 [INFO] [stderr] Compiling percent-encoding v2.1.0 [INFO] [stderr] Compiling base64 v0.13.0 [INFO] [stderr] Compiling regex-syntax v0.6.22 [INFO] [stderr] Compiling siphasher v0.3.5 [INFO] [stderr] Compiling adler v1.0.2 [INFO] [stderr] Compiling async-trait v0.1.48 [INFO] [stderr] Compiling arrayvec v0.5.2 [INFO] [stderr] Compiling lexical-core v0.7.5 [INFO] [stderr] Compiling signal-hook v0.3.7 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling opaque-debug v0.3.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 radium v0.5.3 [INFO] [stderr] Compiling dtoa v0.4.7 [INFO] [stderr] Compiling getrandom v0.2.2 [INFO] [stderr] Compiling foreign-types-shared v0.1.1 [INFO] [stderr] Compiling autocfg v0.1.7 [INFO] [stderr] Compiling openssl v0.10.32 [INFO] [stderr] Compiling linked-hash-map v0.5.4 [INFO] [stderr] Compiling libm v0.2.1 [INFO] [stderr] Compiling funty v1.1.0 [INFO] [stderr] Compiling build_const v0.2.1 [INFO] [stderr] Compiling tap v1.0.1 [INFO] [stderr] Compiling wyz v0.2.0 [INFO] [stderr] Compiling subtle v2.4.0 [INFO] [stderr] Compiling bytemuck v1.5.1 [INFO] [stderr] Compiling try-lock v0.2.3 [INFO] [stderr] Compiling openssl-probe v0.1.2 [INFO] [stderr] Compiling new_debug_unreachable v1.0.4 [INFO] [stderr] Compiling weezl v0.1.4 [INFO] [stderr] Compiling mime v0.3.16 [INFO] [stderr] Compiling maplit v1.0.2 [INFO] [stderr] Compiling tower-service v0.3.1 [INFO] [stderr] Compiling precomputed-hash v0.1.1 [INFO] [stderr] Compiling mac v0.1.1 [INFO] [stderr] Compiling unicode_categories v0.1.1 [INFO] [stderr] Compiling httpdate v0.3.2 [INFO] [stderr] Compiling utf-8 v0.7.5 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Compiling whoami v1.1.0 [INFO] [stderr] Compiling nodrop v0.1.14 [INFO] [stderr] Compiling podio v0.1.7 [INFO] [stderr] Compiling ascii v0.9.3 [INFO] [stderr] Compiling stable_deref_trait v1.2.0 [INFO] [stderr] Compiling validator_types v0.12.0 [INFO] [stderr] Compiling debug-helper v0.3.10 [INFO] [stderr] Compiling thin-slice v0.1.1 [INFO] [stderr] Compiling base32 v0.4.0 [INFO] [stderr] Compiling checked_int_cast v1.0.0 [INFO] [stderr] Compiling hound v3.4.0 [INFO] [stderr] Compiling if_chain v1.0.1 [INFO] [stderr] Compiling async_once v0.2.1 [INFO] [stderr] Compiling ego-tree v0.6.2 [INFO] [stderr] Compiling fast_api v0.1.0 (/opt/rustwide/workdir/fast_api) [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling ring v0.16.20 [INFO] [stderr] Compiling brotli-sys v0.3.2 [INFO] [stderr] Compiling instant v0.1.9 [INFO] [stderr] Compiling futures-channel v0.3.13 [INFO] [stderr] Compiling http v0.2.3 [INFO] [stderr] Compiling bytestring v1.0.0 [INFO] [stderr] Compiling bzip2-sys v0.1.10+1.0.8 [INFO] [stderr] Compiling libsqlite3-sys v0.20.1 [INFO] [stderr] Compiling unicode-bidi v0.3.4 [INFO] [stderr] Compiling thread_local v1.1.3 [INFO] [stderr] Compiling tinyvec v1.1.1 [INFO] [stderr] Compiling async-lock v2.3.0 [INFO] [stderr] Compiling hashbrown v0.9.1 [INFO] [stderr] Compiling form_urlencoded v1.0.1 [INFO] [stderr] Compiling fxhash v0.2.1 [INFO] [stderr] Compiling phf_shared v0.8.0 [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 ahash v0.6.3 [INFO] [stderr] Compiling nom v5.1.2 [INFO] [stderr] Compiling cookie v0.14.4 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [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 openssl-sys v0.9.60 [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 base64-url v1.4.9 [INFO] [stderr] Compiling foreign-types v0.3.2 [INFO] [stderr] Compiling deflate v0.8.6 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling dtoa-short v0.3.3 [INFO] [stderr] Compiling lru-cache v0.1.2 [INFO] [stderr] Compiling rgb v0.8.25 [INFO] [stderr] Compiling crc v1.8.1 [INFO] [stderr] Compiling futf v0.1.4 [INFO] [stderr] Compiling servo_arc v0.1.1 [INFO] [stderr] Compiling crc-any v2.3.5 [INFO] [stderr] Compiling num-bigint-dig v0.6.1 [INFO] [stderr] Compiling getopts v0.2.21 [INFO] [stderr] Compiling gif v0.11.1 [INFO] [stderr] Compiling tracing-core v0.1.17 [INFO] [stderr] Compiling async-channel v1.6.1 [INFO] [stderr] Compiling crc32fast v1.2.1 [INFO] [stderr] Compiling encoding_rs v0.8.28 [INFO] [stderr] Compiling hashlink v0.6.0 [INFO] [stderr] Compiling fallible_collections v0.4.0 [INFO] [stderr] Compiling unicode-normalization v0.1.17 [INFO] [stderr] Compiling quote v1.0.9 [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 png v0.16.8 [INFO] [stderr] Compiling smallvec v0.6.14 [INFO] [stderr] Compiling num_cpus v1.13.0 [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 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 native-tls v0.2.7 [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 idna v0.2.2 [INFO] [stderr] Compiling stringprep v0.1.2 [INFO] [stderr] Compiling regex v1.4.3 [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 threadpool v1.8.1 [INFO] [stderr] Compiling dashmap v4.0.2 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling blocking v1.0.2 [INFO] [stderr] Compiling async-executor v1.4.0 [INFO] [stderr] Compiling flate2 v1.0.20 [INFO] [stderr] Compiling atoi v0.4.0 [INFO] [stderr] Compiling resolv-conf v0.7.0 [INFO] [stderr] Compiling nb-connect v1.0.3 [INFO] [stderr] Compiling parking_lot v0.11.1 [INFO] [stderr] Compiling colored v2.0.0 [INFO] [stderr] Compiling bzip2 v0.3.3 [INFO] [stderr] Compiling sha-1 v0.9.4 [INFO] [stderr] Compiling sha2 v0.9.3 [INFO] [stderr] Compiling hmac v0.10.1 [INFO] [stderr] Compiling md-5 v0.9.1 [INFO] [stderr] Compiling crossbeam-deque v0.8.0 [INFO] [stderr] Compiling url v2.2.1 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling rand_pcg v0.2.1 [INFO] [stderr] Compiling pem v0.8.3 [INFO] [stderr] Compiling lodepng v3.4.5 [INFO] [stderr] Compiling zip v0.5.6 [INFO] [stderr] Compiling webpki v0.21.4 [INFO] [stderr] Compiling sct v0.6.0 [INFO] [stderr] Compiling rayon-core v1.9.0 [INFO] [stderr] Compiling crossbeam v0.8.0 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling webpki-roots v0.21.0 [INFO] [stderr] Compiling brotli2 v0.3.2 [INFO] [stderr] Compiling phf_generator v0.8.0 [INFO] [stderr] Compiling phf_codegen v0.8.0 [INFO] [stderr] Compiling string_cache_codegen v0.5.1 [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 ctor v0.1.19 [INFO] [stderr] Compiling serde_derive v1.0.124 [INFO] [stderr] Compiling futures-macro v0.3.13 [INFO] [stderr] Compiling derive_more v0.99.11 [INFO] [stderr] Compiling pin-project-internal v0.4.27 [INFO] [stderr] Compiling thiserror-impl v1.0.24 [INFO] [stderr] Compiling pin-project-internal v1.0.5 [INFO] [stderr] Compiling time-macros-impl v0.1.1 [INFO] [stderr] Compiling actix-macros v0.1.3 [INFO] [stderr] Compiling async-attributes v1.1.2 [INFO] [stderr] Compiling zeroize_derive v1.0.1 [INFO] [stderr] Compiling enum-as-inner v0.3.3 [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 rbatis-macro-driver v1.8.78 [INFO] [stderr] Compiling actix-web-codegen v0.4.0 [INFO] [stderr] Compiling validator_derive v0.12.0 [INFO] [stderr] Compiling tiff v0.6.1 [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 image v0.23.14 [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 mio v0.7.9 [INFO] [stderr] Compiling kv-log-macro v1.0.7 [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 pin-project v1.0.5 [INFO] [stderr] Compiling tracing-futures v0.2.5 [INFO] [stderr] Compiling tokio v0.2.25 [INFO] [stderr] Compiling async-process v1.0.2 [INFO] [stderr] Compiling async-global-executor v2.0.2 [INFO] [stderr] Compiling pin-project v0.4.27 [INFO] [stderr] Compiling async-std v1.9.0 [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 futures v0.3.13 [INFO] [stderr] Compiling actix-threadpool v0.3.3 [INFO] [stderr] Compiling qrcode v0.12.0 [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 actix-utils v2.0.0 [INFO] [stderr] Compiling h2 v0.3.1 [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 actix-testing v1.0.1 [INFO] [stderr] Compiling sqlx-rt v0.3.0 [INFO] [stderr] Compiling chrono v0.4.19 [INFO] [stderr] Compiling serde_urlencoded v0.7.0 [INFO] [stderr] Compiling rust_decimal v1.10.3 [INFO] [stderr] Compiling bigdecimal v0.2.0 [INFO] [stderr] Compiling ipnetwork v0.17.0 [INFO] [stderr] Compiling uuid v0.8.2 [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 actix-connect v2.0.0 [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 captcha v0.0.8 [INFO] [stderr] Compiling fast_log v1.3.23 [INFO] [stderr] Compiling validator v0.12.0 [INFO] [stderr] Compiling rsa v0.3.0 [INFO] [stderr] Compiling jsonwebtoken v7.2.0 [INFO] [stderr] Compiling markup5ever v0.10.0 [INFO] [stderr] Compiling py_sql v1.0.1 [INFO] [stderr] Compiling actix-http v2.2.0 [INFO] [stderr] Compiling sqlx-core v0.5.1 [INFO] [stderr] Compiling hyper v0.14.4 [INFO] [stderr] Compiling redis v0.17.0 [INFO] [stderr] Compiling awc v2.0.3 [INFO] [stderr] Compiling scraper v0.12.0 [INFO] [stderr] Compiling actix-web v3.3.2 [INFO] [stderr] Compiling hyper-tls v0.5.0 [INFO] [stderr] Compiling reqwest v0.11.2 [INFO] [stderr] Compiling rbatis-core v1.8.70 [INFO] [stderr] Compiling redis-async-pool v0.2.4 [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 55s [INFO] running `Command { std: "docker" "inspect" "96ffda8a1c65a1bc3c65dc9ccf9a0c860e26528c318a48b6635e5197d080415b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "96ffda8a1c65a1bc3c65dc9ccf9a0c860e26528c318a48b6635e5197d080415b", kill_on_drop: false }` [INFO] [stdout] 96ffda8a1c65a1bc3c65dc9ccf9a0c860e26528c318a48b6635e5197d080415b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+722e1797249a965b6335aebd65d777f917e498f1" "test" "--frozen" "--no-run" "--message-format=json", 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] bb947495a2b6e2a582f4947d7fc23315cfca1b6b3b985aca68d67f558e560fa4 [INFO] running `Command { std: "docker" "start" "-a" "bb947495a2b6e2a582f4947d7fc23315cfca1b6b3b985aca68d67f558e560fa4", 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] [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] [stderr] Compiling fast_common v0.1.0 (/opt/rustwide/workdir/fast_common) [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] [stderr] Compiling fast_admin v0.1.0 (/opt/rustwide/workdir/fast_admin) [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] 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 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: `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 17.22s [INFO] running `Command { std: "docker" "inspect" "bb947495a2b6e2a582f4947d7fc23315cfca1b6b3b985aca68d67f558e560fa4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bb947495a2b6e2a582f4947d7fc23315cfca1b6b3b985aca68d67f558e560fa4", kill_on_drop: false }` [INFO] [stdout] bb947495a2b6e2a582f4947d7fc23315cfca1b6b3b985aca68d67f558e560fa4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+722e1797249a965b6335aebd65d777f917e498f1" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] edfc9239fe4451e5a0f2498084b39708b71f684b540335d6f0eeb3639e21182b [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" "edfc9239fe4451e5a0f2498084b39708b71f684b540335d6f0eeb3639e21182b", 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: 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: `fast_common` (lib) generated 35 warnings [INFO] [stderr] warning: `fast_common` (lib test) generated 34 warnings (33 duplicates) [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: `fast_admin` (bin "fast_admin" test) generated 16 warnings [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.80s [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/fast_admin-b3f505cae8e0045c) [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_api-1e335dc14297f40b) [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/fast_common-ee483fbbd67ce226) [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.02s [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/fast_demo-4bb87c0c2175192f) [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" "edfc9239fe4451e5a0f2498084b39708b71f684b540335d6f0eeb3639e21182b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "edfc9239fe4451e5a0f2498084b39708b71f684b540335d6f0eeb3639e21182b", kill_on_drop: false }` [INFO] [stdout] edfc9239fe4451e5a0f2498084b39708b71f684b540335d6f0eeb3639e21182b