[INFO] cloning repository https://github.com/stslex/AtTenR [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/stslex/AtTenR" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstslex%2FAtTenR", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstslex%2FAtTenR'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 20caaacf0fd07018acf13fb5522fe130f9d54bbc [INFO] testing stslex/AtTenR against 1.95.0 for beta-1.96-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstslex%2FAtTenR" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/stslex/AtTenR [INFO] finished tweaking git repo https://github.com/stslex/AtTenR [INFO] tweaked toml for git repo https://github.com/stslex/AtTenR written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/stslex/AtTenR on toolchain 1.95.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 337 packages to latest compatible versions [INFO] [stderr] Adding generic-array v0.14.7 (available: v0.14.9) [INFO] [stderr] Adding hmac v0.12.1 (available: v0.13.0) [INFO] [stderr] Adding jsonwebtoken v9.3.1 (available: v10.3.0) [INFO] [stderr] Adding reqwest v0.12.28 (available: v0.13.2) [INFO] [stderr] Adding sha2 v0.10.9 (available: v0.11.0) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded migrations_internals v2.3.0 [INFO] [stderr] Downloaded migrations_macros v2.3.0 [INFO] [stderr] Downloaded diesel_migrations v2.3.1 [INFO] [stderr] Downloaded tokio-openssl v0.6.5 [INFO] [stderr] Downloaded jwt v0.16.0 [INFO] [stderr] Downloaded winnow v1.0.2 [INFO] [stderr] Downloaded jiff-static v0.2.24 [INFO] [stderr] Downloaded jiff v0.2.24 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b55b0ab3f4a1ac6f8bf857456767288ba4c5a751990976336d42ab00297d8bc7 [INFO] running `Command { std: "docker" "start" "-a" "b55b0ab3f4a1ac6f8bf857456767288ba4c5a751990976336d42ab00297d8bc7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b55b0ab3f4a1ac6f8bf857456767288ba4c5a751990976336d42ab00297d8bc7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b55b0ab3f4a1ac6f8bf857456767288ba4c5a751990976336d42ab00297d8bc7", kill_on_drop: false }` [INFO] [stdout] b55b0ab3f4a1ac6f8bf857456767288ba4c5a751990976336d42ab00297d8bc7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e96c1d0e79b2c459ecd8e2067a484f848084d6c1e88ff152b91b9db83c6893df [INFO] running `Command { std: "docker" "start" "-a" "e96c1d0e79b2c459ecd8e2067a484f848084d6c1e88ff152b91b9db83c6893df", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.186 [INFO] [stderr] Compiling typenum v1.20.0 [INFO] [stderr] Compiling bitflags v2.11.1 [INFO] [stderr] Compiling futures-task v0.3.32 [INFO] [stderr] Compiling openssl v0.10.78 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling tokio-macros v2.7.0 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling zerovec-derive v0.11.3 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling rand_core v0.10.1 [INFO] [stderr] Compiling darling_core v0.21.3 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling local-waker v0.1.4 [INFO] [stderr] Compiling num-conv v0.2.1 [INFO] [stderr] Compiling unicode-segmentation v1.13.2 [INFO] [stderr] Compiling time-macros v0.2.27 [INFO] [stderr] Compiling winnow v1.0.2 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling zerofrom-derive v0.1.7 [INFO] [stderr] Compiling yoke-derive v0.8.2 [INFO] [stderr] Compiling tokio-openssl v0.6.5 [INFO] [stderr] Compiling cpufeatures v0.3.0 [INFO] [stderr] Compiling rustls v0.23.39 [INFO] [stderr] Compiling zstd-safe v7.2.4 [INFO] [stderr] Compiling toml_parser v1.1.2+spec-1.1.0 [INFO] [stderr] Compiling convert_case v0.10.0 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling actix-utils v3.0.1 [INFO] [stderr] Compiling serde_spanned v1.1.1 [INFO] [stderr] Compiling toml_datetime v0.7.5+spec-1.1.0 [INFO] [stderr] Compiling http v0.2.12 [INFO] [stderr] Compiling actix-service v2.0.3 [INFO] [stderr] Compiling hybrid-array v0.4.10 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling time v0.3.47 [INFO] [stderr] Compiling pq-sys v0.7.5 [INFO] [stderr] Compiling simd-adler32 v0.3.9 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling winnow v0.7.15 [INFO] [stderr] Compiling bytes v1.11.1 [INFO] [stderr] Compiling jobserver v0.1.34 [INFO] [stderr] Compiling cc v1.2.60 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling mio v1.2.0 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling socket2 v0.6.3 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling zerofrom v0.1.7 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling yoke v0.8.2 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling zerovec v0.11.6 [INFO] [stderr] Compiling tokio v1.52.1 [INFO] [stderr] Compiling zerotrie v0.2.4 [INFO] [stderr] Compiling crypto-common v0.2.1 [INFO] [stderr] Compiling block-buffer v0.12.0 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling regex-lite v0.1.9 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling const-oid v0.10.2 [INFO] [stderr] Compiling tinystr v0.8.3 [INFO] [stderr] Compiling potential_utf v0.1.5 [INFO] [stderr] Compiling diesel_derives v2.3.7 [INFO] [stderr] Compiling icu_locale_core v2.2.0 [INFO] [stderr] Compiling icu_collections v2.2.0 [INFO] [stderr] Compiling derive_more-impl v2.1.1 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling digest v0.11.2 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling toml v0.9.12+spec-1.1.0 [INFO] [stderr] Compiling bytestring v1.5.0 [INFO] [stderr] Compiling scheduled-thread-pool v0.2.7 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling brotli-decompressor v5.0.0 [INFO] [stderr] Compiling openssl-sys v0.9.114 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling icu_provider v2.2.0 [INFO] [stderr] Compiling zstd-sys v2.0.16+zstd.1.5.7 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling darling_macro v0.21.3 [INFO] [stderr] Compiling chacha20 v0.10.0 [INFO] [stderr] Compiling icu_properties v2.2.0 [INFO] [stderr] Compiling icu_normalizer v2.2.0 [INFO] [stderr] Compiling darling v0.21.3 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling dsl_auto_type v0.2.0 [INFO] [stderr] Compiling diesel_table_macro_syntax v0.3.0 [INFO] [stderr] Compiling cookie v0.16.2 [INFO] [stderr] Compiling impl-more v0.1.9 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling brotli v8.0.2 [INFO] [stderr] Compiling migrations_internals v2.3.0 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling actix-router v0.5.4 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling rand v0.10.1 [INFO] [stderr] Compiling r2d2 v0.8.10 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling sha1 v0.11.0 [INFO] [stderr] Compiling derive_more v2.1.1 [INFO] [stderr] Compiling uuid v1.23.1 [INFO] [stderr] Compiling socket2 v0.5.10 [INFO] [stderr] Compiling local-channel v0.1.5 [INFO] [stderr] Compiling webpki-roots v1.0.7 [INFO] [stderr] Compiling language-tags v0.3.2 [INFO] [stderr] Compiling downcast-rs v2.0.2 [INFO] [stderr] Compiling iri-string v0.7.12 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling anstream v1.0.0 [INFO] [stderr] Compiling simple_asn1 v0.6.4 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling actix-web-codegen v4.3.0 [INFO] [stderr] Compiling migrations_macros v2.3.0 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling actix-rt v2.11.0 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling tokio-stream v0.1.18 [INFO] [stderr] Compiling env_filter v1.0.1 [INFO] [stderr] Compiling h2 v0.4.13 [INFO] [stderr] Compiling actix-codec v0.5.2 [INFO] [stderr] Compiling h2 v0.3.27 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling actix-server v2.6.0 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling pem v3.0.6 [INFO] [stderr] Compiling actix-macros v0.2.4 [INFO] [stderr] Compiling base64 v0.13.1 [INFO] [stderr] Compiling jiff v0.2.24 [INFO] [stderr] Compiling tokio-test v0.4.5 [INFO] [stderr] Compiling dotenvy v0.15.7 [INFO] [stderr] Compiling jwt v0.16.0 [INFO] [stderr] Compiling actix-tls v3.5.0 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling rustls-webpki v0.103.13 [INFO] [stderr] Compiling jsonwebtoken v9.3.1 [INFO] [stderr] Compiling diesel v2.3.7 [INFO] [stderr] Compiling hyper v1.9.0 [INFO] [stderr] Compiling env_logger v0.11.10 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling zstd v0.13.3 [INFO] [stderr] Compiling actix-http v3.12.1 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling hyper-rustls v0.27.9 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling actix-web v4.13.0 [INFO] [stderr] Compiling diesel_migrations v2.3.1 [INFO] [stderr] Compiling atten_r v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::io::Error` [INFO] [stdout] --> src/database/user/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::io::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `bind_server_ssl` is never used [INFO] [stdout] --> src/config/mod.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub trait ServiceSertConfig { [INFO] [stdout] | ----------------- method in this trait [INFO] [stdout] 16 | fn bind_server_ssl(self) -> Self; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `JWT_ACCESS_SECRET` is never used [INFO] [stdout] --> src/config/mod.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const JWT_ACCESS_SECRET: &'static str = "JWT_ACCESS_SECRET"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `JWT_REFRESH_SECRET` is never used [INFO] [stdout] --> src/config/mod.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const JWT_REFRESH_SECRET: &'static str = "JWT_REFRESH_SECRET"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `JWT_PROPERY_UUID` is never used [INFO] [stdout] --> src/config/mod.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const JWT_PROPERY_UUID: &'static str = "uuid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `JWT_PROPERY_EXP` is never used [INFO] [stdout] --> src/config/mod.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | pub const JWT_PROPERY_EXP: &'static str = "exp_time"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `JWT_PROPERY_USERNAME` is never used [INFO] [stdout] --> src/config/mod.rs:25:11 [INFO] [stdout] | [INFO] [stdout] 25 | pub const JWT_PROPERY_USERNAME: &'static str = "username"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `aud`, `iss`, and `exp` are never read [INFO] [stdout] --> src/routes/auth/google_verifier.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 44 | struct Claims { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 48 | aud: String, [INFO] [stdout] | ^^^ [INFO] [stdout] 49 | iss: String, [INFO] [stdout] | ^^^ [INFO] [stdout] 50 | exp: usize, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Claims` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `kty`, `alg`, and `use_` are never read [INFO] [stdout] --> src/routes/auth/google_verifier.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 59 | struct Jwk { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 63 | kty: String, [INFO] [stdout] | ^^^ [INFO] [stdout] 64 | alg: String, [INFO] [stdout] | ^^^ [INFO] [stdout] 65 | #[serde(rename = "use")] [INFO] [stdout] 66 | use_: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Jwk` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LoginRequest` is never constructed [INFO] [stdout] --> src/routes/auth/models.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct LoginRequest { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RegistrationRequest` is never constructed [INFO] [stdout] --> src/routes/auth/models.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct RegistrationRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AuthResponse` is never constructed [INFO] [stdout] --> src/routes/auth/models.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 31 | pub struct AuthResponse { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `FieldValidator` is never used [INFO] [stdout] --> src/routes/auth/validator/mod.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait FieldValidator { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PasswordValidatorObject` is never constructed [INFO] [stdout] --> src/routes/auth/validator/mod.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct PasswordValidatorObject<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PasswordValidatorError` is never used [INFO] [stdout] --> src/routes/auth/validator/mod.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | pub enum PasswordValidatorError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LoginValidatorObject` is never constructed [INFO] [stdout] --> src/routes/auth/validator/mod.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct LoginValidatorObject<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `LoginValidatorError` is never used [INFO] [stdout] --> src/routes/auth/validator/mod.rs:27:10 [INFO] [stdout] | [INFO] [stdout] 27 | pub enum LoginValidatorError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `ModelValidator` is never used [INFO] [stdout] --> src/routes/models/mod.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub trait ModelValidator<'a, D>: Validator<'a, D, ErrorResponse<'static>> [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UserResponse` is never constructed [INFO] [stdout] --> src/routes/models/response.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct UserResponse { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `API_KEY_HEADER` is never used [INFO] [stdout] --> src/service/guard/mod.rs:6:7 [INFO] [stdout] | [INFO] [stdout] 6 | const API_KEY_HEADER: &str = "X-Api-Key"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `API_KEY_ENV_VAR` is never used [INFO] [stdout] --> src/service/guard/mod.rs:7:7 [INFO] [stdout] | [INFO] [stdout] 7 | const API_KEY_ENV_VAR: &str = "API_KEY"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `API_KEY` is never used [INFO] [stdout] --> src/service/guard/mod.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | static API_KEY: Lazy = [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `api_key_guard` is never used [INFO] [stdout] --> src/service/guard/mod.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn api_key_guard() -> impl Guard { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `AppHasher` is never used [INFO] [stdout] --> src/utils/mod.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait AppHasher { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `AsyncInto` is never used [INFO] [stdout] --> src/utils/mod.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub trait AsyncInto { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Validator` is never used [INFO] [stdout] --> src/utils/mod.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub trait Validator<'a, D, E> [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified [INFO] [stdout] --> src/repository/auth/mod.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | async fn auth(self, info: GoogleTokenInfo) -> Result; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future` [INFO] [stdout] = note: `#[warn(async_fn_in_trait)]` on by default [INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change [INFO] [stdout] | [INFO] [stdout] 14 - async fn auth(self, info: GoogleTokenInfo) -> Result; [INFO] [stdout] 14 + fn auth(self, info: GoogleTokenInfo) -> impl std::future::Future> + Send; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 37s [INFO] running `Command { std: "docker" "inspect" "e96c1d0e79b2c459ecd8e2067a484f848084d6c1e88ff152b91b9db83c6893df", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e96c1d0e79b2c459ecd8e2067a484f848084d6c1e88ff152b91b9db83c6893df", kill_on_drop: false }` [INFO] [stdout] e96c1d0e79b2c459ecd8e2067a484f848084d6c1e88ff152b91b9db83c6893df [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c0a2c2c16243c247600c0861e3a9e2afe99622862d27e996f180cff7cb4b0004 [INFO] running `Command { std: "docker" "start" "-a" "c0a2c2c16243c247600c0861e3a9e2afe99622862d27e996f180cff7cb4b0004", kill_on_drop: false }` [INFO] [stderr] Compiling atten_r v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::io::Error` [INFO] [stdout] --> src/database/user/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::io::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `bind_app_state_for_tests` is never used [INFO] [stdout] --> src/config/mod.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub trait AppStateConfig { [INFO] [stdout] | -------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 12 | fn bind_app_state_for_tests(self) -> Self; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `bind_server_ssl` is never used [INFO] [stdout] --> src/config/mod.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub trait ServiceSertConfig { [INFO] [stdout] | ----------------- method in this trait [INFO] [stdout] 16 | fn bind_server_ssl(self) -> Self; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `JWT_ACCESS_SECRET` is never used [INFO] [stdout] --> src/config/mod.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const JWT_ACCESS_SECRET: &'static str = "JWT_ACCESS_SECRET"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `JWT_REFRESH_SECRET` is never used [INFO] [stdout] --> src/config/mod.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const JWT_REFRESH_SECRET: &'static str = "JWT_REFRESH_SECRET"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `JWT_PROPERY_UUID` is never used [INFO] [stdout] --> src/config/mod.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const JWT_PROPERY_UUID: &'static str = "uuid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `JWT_PROPERY_EXP` is never used [INFO] [stdout] --> src/config/mod.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | pub const JWT_PROPERY_EXP: &'static str = "exp_time"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `JWT_PROPERY_USERNAME` is never used [INFO] [stdout] --> src/config/mod.rs:25:11 [INFO] [stdout] | [INFO] [stdout] 25 | pub const JWT_PROPERY_USERNAME: &'static str = "username"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_test_db_pool` is never used [INFO] [stdout] --> src/config/database/pool.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn create_test_db_pool() -> DbPool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `aud`, `iss`, and `exp` are never read [INFO] [stdout] --> src/routes/auth/google_verifier.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 44 | struct Claims { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 48 | aud: String, [INFO] [stdout] | ^^^ [INFO] [stdout] 49 | iss: String, [INFO] [stdout] | ^^^ [INFO] [stdout] 50 | exp: usize, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Claims` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `kty`, `alg`, and `use_` are never read [INFO] [stdout] --> src/routes/auth/google_verifier.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 59 | struct Jwk { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 63 | kty: String, [INFO] [stdout] | ^^^ [INFO] [stdout] 64 | alg: String, [INFO] [stdout] | ^^^ [INFO] [stdout] 65 | #[serde(rename = "use")] [INFO] [stdout] 66 | use_: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Jwk` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LoginRequest` is never constructed [INFO] [stdout] --> src/routes/auth/models.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct LoginRequest { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RegistrationRequest` is never constructed [INFO] [stdout] --> src/routes/auth/models.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct RegistrationRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AuthResponse` is never constructed [INFO] [stdout] --> src/routes/auth/models.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 31 | pub struct AuthResponse { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `ModelValidator` is never used [INFO] [stdout] --> src/routes/models/mod.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub trait ModelValidator<'a, D>: Validator<'a, D, ErrorResponse<'static>> [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UserResponse` is never constructed [INFO] [stdout] --> src/routes/models/response.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct UserResponse { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `API_KEY_HEADER` is never used [INFO] [stdout] --> src/service/guard/mod.rs:6:7 [INFO] [stdout] | [INFO] [stdout] 6 | const API_KEY_HEADER: &str = "X-Api-Key"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `API_KEY_ENV_VAR` is never used [INFO] [stdout] --> src/service/guard/mod.rs:7:7 [INFO] [stdout] | [INFO] [stdout] 7 | const API_KEY_ENV_VAR: &str = "API_KEY"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `API_KEY` is never used [INFO] [stdout] --> src/service/guard/mod.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | static API_KEY: Lazy = [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `api_key_guard` is never used [INFO] [stdout] --> src/service/guard/mod.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn api_key_guard() -> impl Guard { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `AsyncInto` is never used [INFO] [stdout] --> src/utils/mod.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub trait AsyncInto { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Validator` is never used [INFO] [stdout] --> src/utils/mod.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub trait Validator<'a, D, E> [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified [INFO] [stdout] --> src/repository/auth/mod.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | async fn auth(self, info: GoogleTokenInfo) -> Result; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future` [INFO] [stdout] = note: `#[warn(async_fn_in_trait)]` on by default [INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change [INFO] [stdout] | [INFO] [stdout] 14 - async fn auth(self, info: GoogleTokenInfo) -> Result; [INFO] [stdout] 14 + fn auth(self, info: GoogleTokenInfo) -> impl std::future::Future> + Send; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 3.93s [INFO] running `Command { std: "docker" "inspect" "c0a2c2c16243c247600c0861e3a9e2afe99622862d27e996f180cff7cb4b0004", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c0a2c2c16243c247600c0861e3a9e2afe99622862d27e996f180cff7cb4b0004", kill_on_drop: false }` [INFO] [stdout] c0a2c2c16243c247600c0861e3a9e2afe99622862d27e996f180cff7cb4b0004 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 02df50952637954693b62c305ba5247c0a89b8cfae67c6f98b2c068ca8141395 [INFO] running `Command { std: "docker" "start" "-a" "02df50952637954693b62c305ba5247c0a89b8cfae67c6f98b2c068ca8141395", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `std::io::Error` [INFO] [stderr] --> src/database/user/mod.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::io::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: method `bind_app_state_for_tests` is never used [INFO] [stderr] --> src/config/mod.rs:12:8 [INFO] [stderr] | [INFO] [stderr] 9 | pub trait AppStateConfig { [INFO] [stderr] | -------------- method in this trait [INFO] [stderr] ... [INFO] [stderr] 12 | fn bind_app_state_for_tests(self) -> Self; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: method `bind_server_ssl` is never used [INFO] [stderr] --> src/config/mod.rs:16:8 [INFO] [stderr] | [INFO] [stderr] 15 | pub trait ServiceSertConfig { [INFO] [stderr] | ----------------- method in this trait [INFO] [stderr] 16 | fn bind_server_ssl(self) -> Self; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `JWT_ACCESS_SECRET` is never used [INFO] [stderr] --> src/config/mod.rs:20:11 [INFO] [stderr] | [INFO] [stderr] 20 | pub const JWT_ACCESS_SECRET: &'static str = "JWT_ACCESS_SECRET"; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `JWT_REFRESH_SECRET` is never used [INFO] [stderr] --> src/config/mod.rs:21:11 [INFO] [stderr] | [INFO] [stderr] 21 | pub const JWT_REFRESH_SECRET: &'static str = "JWT_REFRESH_SECRET"; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `JWT_PROPERY_UUID` is never used [INFO] [stderr] --> src/config/mod.rs:23:11 [INFO] [stderr] | [INFO] [stderr] 23 | pub const JWT_PROPERY_UUID: &'static str = "uuid"; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `JWT_PROPERY_EXP` is never used [INFO] [stderr] --> src/config/mod.rs:24:11 [INFO] [stderr] | [INFO] [stderr] 24 | pub const JWT_PROPERY_EXP: &'static str = "exp_time"; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `JWT_PROPERY_USERNAME` is never used [INFO] [stderr] --> src/config/mod.rs:25:11 [INFO] [stderr] | [INFO] [stderr] 25 | pub const JWT_PROPERY_USERNAME: &'static str = "username"; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `create_test_db_pool` is never used [INFO] [stderr] --> src/config/database/pool.rs:18:8 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn create_test_db_pool() -> DbPool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `aud`, `iss`, and `exp` are never read [INFO] [stderr] --> src/routes/auth/google_verifier.rs:48:5 [INFO] [stderr] | [INFO] [stderr] 44 | struct Claims { [INFO] [stderr] | ------ fields in this struct [INFO] [stderr] ... [INFO] [stderr] 48 | aud: String, [INFO] [stderr] | ^^^ [INFO] [stderr] 49 | iss: String, [INFO] [stderr] | ^^^ [INFO] [stderr] 50 | exp: usize, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Claims` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `kty`, `alg`, and `use_` are never read [INFO] [stderr] --> src/routes/auth/google_verifier.rs:63:5 [INFO] [stderr] | [INFO] [stderr] 59 | struct Jwk { [INFO] [stderr] | --- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 63 | kty: String, [INFO] [stderr] | ^^^ [INFO] [stderr] 64 | alg: String, [INFO] [stderr] | ^^^ [INFO] [stderr] 65 | #[serde(rename = "use")] [INFO] [stderr] 66 | use_: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Jwk` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: struct `LoginRequest` is never constructed [INFO] [stderr] --> src/routes/auth/models.rs:7:12 [INFO] [stderr] | [INFO] [stderr] 7 | pub struct LoginRequest { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `RegistrationRequest` is never constructed [INFO] [stderr] --> src/routes/auth/models.rs:21:12 [INFO] [stderr] | [INFO] [stderr] 21 | pub struct RegistrationRequest { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `AuthResponse` is never constructed [INFO] [stderr] --> src/routes/auth/models.rs:31:12 [INFO] [stderr] | [INFO] [stderr] 31 | pub struct AuthResponse { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `ModelValidator` is never used [INFO] [stderr] --> src/routes/models/mod.rs:9:11 [INFO] [stderr] | [INFO] [stderr] 9 | pub trait ModelValidator<'a, D>: Validator<'a, D, ErrorResponse<'static>> [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `UserResponse` is never constructed [INFO] [stderr] --> src/routes/models/response.rs:4:12 [INFO] [stderr] | [INFO] [stderr] 4 | pub struct UserResponse { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `API_KEY_HEADER` is never used [INFO] [stderr] --> src/service/guard/mod.rs:6:7 [INFO] [stderr] | [INFO] [stderr] 6 | const API_KEY_HEADER: &str = "X-Api-Key"; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `API_KEY_ENV_VAR` is never used [INFO] [stderr] --> src/service/guard/mod.rs:7:7 [INFO] [stderr] | [INFO] [stderr] 7 | const API_KEY_ENV_VAR: &str = "API_KEY"; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static `API_KEY` is never used [INFO] [stderr] --> src/service/guard/mod.rs:9:8 [INFO] [stderr] | [INFO] [stderr] 9 | static API_KEY: Lazy = [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `api_key_guard` is never used [INFO] [stderr] --> src/service/guard/mod.rs:12:8 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn api_key_guard() -> impl Guard { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `AsyncInto` is never used [INFO] [stderr] --> src/utils/mod.rs:10:11 [INFO] [stderr] | [INFO] [stderr] 10 | pub trait AsyncInto { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `Validator` is never used [INFO] [stderr] --> src/utils/mod.rs:14:11 [INFO] [stderr] | [INFO] [stderr] 14 | pub trait Validator<'a, D, E> [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified [INFO] [stderr] --> src/repository/auth/mod.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | async fn auth(self, info: GoogleTokenInfo) -> Result; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future` [INFO] [stderr] = note: `#[warn(async_fn_in_trait)]` on by default [INFO] [stderr] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change [INFO] [stderr] | [INFO] [stderr] 14 - async fn auth(self, info: GoogleTokenInfo) -> Result; [INFO] [stderr] 14 + fn auth(self, info: GoogleTokenInfo) -> impl std::future::Future> + Send; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `atten_r` (bin "atten_r" test) generated 23 warnings (run `cargo fix --bin "atten_r" -p atten_r --tests` to apply 1 suggestion) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.39s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/atten_r-07222fdf7fa68d77) [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test routes::auth::validator::tests::test_validators::test_login_validator_not_safe_admin ... ok [INFO] [stdout] test routes::auth::validator::tests::test_validators::test_login_validator_success ... ok [INFO] [stdout] test routes::auth::validator::tests::test_validators::test_password_validator_too_long ... ok [INFO] [stdout] test routes::auth::validator::tests::test_validators::test_password_validator_success ... ok [INFO] [stdout] test routes::auth::validator::tests::test_validators::test_login_validator_too_short ... ok [INFO] [stdout] test routes::auth::validator::tests::test_validators::test_password_validator_too_short ... ok [INFO] [stdout] test utils::test::tests::test_hasher ... ok [INFO] [stdout] test routes::auth::validator::tests::test_validators::test_password_validator_unsafe_chars ... ok [INFO] [stdout] test routes::auth::validator::tests::test_validators::test_password_validator_unsafe_password ... ok [INFO] [stdout] test routes::auth::validator::tests::test_validators::test_password_validator_unsafe_qwerty ... ok [INFO] [stdout] test routes::auth::validator::tests::test_validators::test_password_validator_unsafe_numbers ... ok [INFO] [stdout] test routes::auth::validator::tests::test_validators::test_login_validator_not_safe_login ... ok [INFO] [stdout] test routes::auth::validator::tests::test_validators::test_login_validator_too_long ... ok [INFO] [stdout] test routes::auth::validator::tests::test_validators::test_password_validator_unsafe_1234546 ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "02df50952637954693b62c305ba5247c0a89b8cfae67c6f98b2c068ca8141395", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "02df50952637954693b62c305ba5247c0a89b8cfae67c6f98b2c068ca8141395", kill_on_drop: false }` [INFO] [stdout] 02df50952637954693b62c305ba5247c0a89b8cfae67c6f98b2c068ca8141395