[INFO] fetching crate sqlx-etorreborre-core 0.7.9... [INFO] linting sqlx-etorreborre-core-0.7.9 against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate sqlx-etorreborre-core 0.7.9 into /workspace/builds/worker-1-tc1/source [INFO] started tweaking crates.io crate sqlx-etorreborre-core 0.7.9 [INFO] finished tweaking crates.io crate sqlx-etorreborre-core 0.7.9 [INFO] tweaked toml for crates.io crate sqlx-etorreborre-core 0.7.9 written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate sqlx-etorreborre-core 0.7.9 on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "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" "+nightly" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 342 packages to latest compatible versions [INFO] [stderr] Adding async-io v1.13.0 (available: v2.6.0) [INFO] [stderr] Adding bigdecimal v0.3.1 (available: v0.4.10) [INFO] [stderr] Adding bit-vec v0.6.3 (available: v0.9.1) [INFO] [stderr] Adding digest v0.10.7 (available: v0.11.2) [INFO] [stderr] Adding event-listener v2.5.3 (available: v5.4.1) [INFO] [stderr] Adding generic-array v0.14.7 (available: v0.14.9) [INFO] [stderr] Adding hashlink v0.8.4 (available: v0.11.0) [INFO] [stderr] Adding ipnetwork v0.20.0 (available: v0.21.1) [INFO] [stderr] Adding rustls v0.21.12 (available: v0.23.37) [INFO] [stderr] Adding rustls-pemfile v1.0.4 (available: v2.2.0) [INFO] [stderr] Adding sqlformat v0.2.6 (available: v0.5.0) [INFO] [stderr] Adding thiserror v1.0.69 (available: v2.0.18) [INFO] [stderr] Adding webpki-roots v0.25.4 (available: v1.0.6) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded sqlx-macros-core v0.7.4 [INFO] [stderr] Downloaded sqlx-sqlite v0.7.4 [INFO] [stderr] Downloaded waker-fn v1.2.0 [INFO] [stderr] Downloaded mac_address v1.1.8 [INFO] [stderr] Downloaded ipnetwork v0.20.0 [INFO] [stderr] Downloaded async-lock v2.8.0 [INFO] [stderr] Downloaded fastrand v1.9.0 [INFO] [stderr] Downloaded socket2 v0.4.10 [INFO] [stderr] Downloaded futures-lite v1.13.0 [INFO] [stderr] Downloaded sqlx-postgres v0.7.4 [INFO] [stderr] Downloaded polling v2.8.0 [INFO] [stderr] Downloaded sqlx-etorreborre-postgres v0.7.9 [INFO] [stderr] Downloaded sqlx-etorreborre v0.7.9 [INFO] [stderr] Downloaded sqlx-core v0.7.4 [INFO] [stderr] Downloaded async-io v1.13.0 [INFO] [stderr] Downloaded sqlx-etorreborre-sqlite v0.7.9 [INFO] [stderr] Downloaded sqlx-mysql v0.7.4 [INFO] [stderr] Downloaded uuid v1.22.0 [INFO] [stderr] Downloaded rustix v0.37.28 [INFO] [stderr] Downloaded bigdecimal v0.3.1 [INFO] [stderr] Downloaded sqlx-macros v0.7.4 [INFO] [stderr] Downloaded linux-raw-sys v0.3.8 [INFO] [stderr] Downloaded libsqlite3-sys v0.27.0 [INFO] [stderr] Downloaded sqlx-etorreborre-core v0.7.9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0b67de71be6b523200d5c8472265e25645f2150149684fc7207d15c524f1e485 [INFO] running `Command { std: "docker" "start" "-a" "0b67de71be6b523200d5c8472265e25645f2150149684fc7207d15c524f1e485", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0b67de71be6b523200d5c8472265e25645f2150149684fc7207d15c524f1e485", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0b67de71be6b523200d5c8472265e25645f2150149684fc7207d15c524f1e485", kill_on_drop: false }` [INFO] [stdout] 0b67de71be6b523200d5c8472265e25645f2150149684fc7207d15c524f1e485 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0a32dc177b291946d49399f29c480c28b85af0c51b913cccae07d1a627ec101b [INFO] running `Command { std: "docker" "start" "-a" "0a32dc177b291946d49399f29c480c28b85af0c51b913cccae07d1a627ec101b", kill_on_drop: false }` [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling stable_deref_trait v1.2.1 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling const-oid v0.9.6 [INFO] [stderr] Compiling libc v0.2.183 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling zerocopy v0.8.42 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling num-conv v0.2.0 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling time-core v0.1.8 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling writeable v0.6.2 [INFO] [stderr] Compiling lock_api v0.4.14 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling litemap v0.8.1 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Compiling libm v0.2.16 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling time-macros v0.2.27 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Checking futures-core v0.3.32 [INFO] [stderr] Checking memchr v2.8.0 [INFO] [stderr] Compiling icu_normalizer_data v2.1.1 [INFO] [stderr] Compiling icu_properties_data v2.1.2 [INFO] [stderr] Checking futures-sink v0.3.32 [INFO] [stderr] Compiling num-bigint-dig v0.8.6 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling base64ct v1.8.3 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling cc v1.2.57 [INFO] [stderr] Compiling spin v0.9.8 [INFO] [stderr] Checking parking_lot_core v0.9.12 [INFO] [stderr] Checking getrandom v0.2.17 [INFO] [stderr] Compiling pem-rfc7468 v0.7.0 [INFO] [stderr] Compiling utf8_iter v1.0.4 [INFO] [stderr] Checking futures-io v0.3.32 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Checking slab v0.4.12 [INFO] [stderr] Compiling percent-encoding v2.3.2 [INFO] [stderr] Compiling itoa v1.0.17 [INFO] [stderr] Compiling futures-task v0.3.32 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling powerfmt v0.2.0 [INFO] [stderr] Checking futures-util v0.3.32 [INFO] [stderr] Compiling form_urlencoded v1.2.2 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling deranged v0.5.8 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling der v0.7.10 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling crc-catalog v2.4.0 [INFO] [stderr] Checking log v0.4.29 [INFO] [stderr] Compiling tinyvec_macros v0.1.1 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling unicode_categories v0.1.1 [INFO] [stderr] Checking tracing v0.1.44 [INFO] [stderr] Compiling libsqlite3-sys v0.27.0 [INFO] [stderr] Compiling tinyvec v1.11.0 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling atoi v2.0.0 [INFO] [stderr] Compiling crossbeam-queue v0.3.12 [INFO] [stderr] Compiling crc v3.4.0 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Checking ahash v0.8.12 [INFO] [stderr] Checking futures-intrusive v0.5.0 [INFO] [stderr] Checking url v2.5.8 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling spki v0.7.3 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling bytes v1.11.1 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Compiling event-listener v2.5.3 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling uuid v1.22.0 [INFO] [stderr] Compiling time v0.3.47 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Compiling pkcs8 v0.10.2 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Compiling unicode-normalization v0.1.25 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling sqlformat v0.2.6 [INFO] [stderr] Compiling num-iter v0.1.45 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling unicode-properties v0.1.4 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling unicode-bidi v0.3.18 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling hkdf v0.12.4 [INFO] [stderr] Checking hashlink v0.8.4 [INFO] [stderr] Compiling pkcs1 v0.7.5 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Compiling signature v2.2.0 [INFO] [stderr] Compiling md-5 v0.10.6 [INFO] [stderr] Compiling dotenvy v0.15.7 [INFO] [stderr] Compiling base64 v0.21.7 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling stringprep v0.1.5 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling whoami v1.6.1 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Checking hashbrown v0.15.5 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling flume v0.11.1 [INFO] [stderr] Checking concurrent-queue v2.5.0 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling urlencoding v2.1.3 [INFO] [stderr] Compiling unicode-segmentation v1.12.0 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling home v0.5.12 [INFO] [stderr] Checking event-listener v5.4.1 [INFO] [stderr] Checking hashlink v0.10.0 [INFO] [stderr] Checking base64 v0.22.1 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Checking tokio v1.50.0 [INFO] [stderr] Checking thiserror v2.0.18 [INFO] [stderr] Checking sqlx-core v0.8.6 [INFO] [stderr] Checking rsa v0.9.10 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling sqlx-core v0.7.4 [INFO] [stderr] Checking sqlx-mysql v0.8.6 [INFO] [stderr] Checking sqlx-etorreborre-core v0.7.9 [INFO] [stderr] Checking sqlx-etorreborre-core v0.7.9 (/opt/rustwide/workdir) [INFO] [stdout] warning: lint `clippy::disallowed_method` has been renamed to `clippy::disallowed_methods` [INFO] [stdout] --> src/lib.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | #![deny(clippy::disallowed_method)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use the new name: `clippy::disallowed_methods` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `crate` references the macro call's crate [INFO] [stdout] --> src/ext/async_stream.rs:124:9 [INFO] [stdout] | [INFO] [stdout] 124 | crate::ext::async_stream::TryAsyncStream::new(move |yielder| async move { [INFO] [stdout] | ^^^^^ help: to reference the macro definition's crate, use: `$crate` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#crate_in_macro_def [INFO] [stdout] = note: `#[warn(clippy::crate_in_macro_def)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `postgres` [INFO] [stdout] --> src/pool/mod.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | feature = "postgres", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `postgres` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `mysql` [INFO] [stdout] --> src/pool/mod.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | feature = "mysql", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `mysql` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `mssql` [INFO] [stdout] --> src/pool/mod.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | feature = "mssql", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `mssql` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `sqlite` [INFO] [stdout] --> src/pool/mod.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | feature = "sqlite" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `sqlite` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `postgres` [INFO] [stdout] --> src/pool/mod.rs:545:9 [INFO] [stdout] | [INFO] [stdout] 545 | feature = "postgres", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `postgres` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `mysql` [INFO] [stdout] --> src/pool/mod.rs:546:9 [INFO] [stdout] | [INFO] [stdout] 546 | feature = "mysql", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `mysql` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `mssql` [INFO] [stdout] --> src/pool/mod.rs:547:9 [INFO] [stdout] | [INFO] [stdout] 547 | feature = "mssql", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `mssql` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `sqlite` [INFO] [stdout] --> src/pool/mod.rs:548:9 [INFO] [stdout] | [INFO] [stdout] 548 | feature = "sqlite" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `sqlite` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/pool/executor.rs:18:31 [INFO] [stdout] | [INFO] [stdout] 18 | fn fetch_many<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 23 | E: Execute<'q, Self::Database>, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] = note: `#[warn(clippy::multiple_bound_locations)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/pool/executor.rs:39:35 [INFO] [stdout] | [INFO] [stdout] 39 | fn fetch_optional<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 44 | E: Execute<'q, Self::Database>, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/executor.rs:37:28 [INFO] [stdout] | [INFO] [stdout] 37 | fn execute<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 43 | E: Execute<'q, Self::Database>, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/executor.rs:49:33 [INFO] [stdout] | [INFO] [stdout] 49 | fn execute_many<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 55 | E: Execute<'q, Self::Database>, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/executor.rs:68:26 [INFO] [stdout] | [INFO] [stdout] 68 | fn fetch<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 74 | E: Execute<'q, Self::Database>, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/executor.rs:88:31 [INFO] [stdout] | [INFO] [stdout] 88 | fn fetch_many<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 100 | E: Execute<'q, Self::Database>; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/executor.rs:103:30 [INFO] [stdout] | [INFO] [stdout] 103 | fn fetch_all<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 109 | E: Execute<'q, Self::Database>, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/executor.rs:115:30 [INFO] [stdout] | [INFO] [stdout] 115 | fn fetch_one<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 121 | E: Execute<'q, Self::Database>, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/executor.rs:132:35 [INFO] [stdout] | [INFO] [stdout] 132 | fn fetch_optional<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 138 | E: Execute<'q, Self::Database>; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `postgres` [INFO] [stdout] --> src/query_builder.rs:597:17 [INFO] [stdout] | [INFO] [stdout] 597 | #[cfg(all(test, feature = "postgres"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `postgres` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty line after doc comment [INFO] [stdout] --> src/query_builder.rs:193:5 [INFO] [stdout] | [INFO] [stdout] 193 | / /// ``` [INFO] [stdout] 194 | | [INFO] [stdout] | |_^ [INFO] [stdout] 195 | pub fn separated<'qb, Sep>(&'qb mut self, separator: Sep) -> Separated<'qb, 'args, DB, Sep> [INFO] [stdout] | ---------------- the comment documents this function [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_doc_comments [INFO] [stdout] = note: `#[warn(clippy::empty_line_after_doc_comments)]` on by default [INFO] [stdout] = help: if the empty line is unintentional, remove it [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling sqlx-postgres v0.7.4 [INFO] [stderr] Compiling sqlx-mysql v0.7.4 [INFO] [stdout] warning: this expression borrows a value the compiler would automatically borrow [INFO] [stdout] --> src/ext/ustr.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | (&**self).hash(state); [INFO] [stdout] | ^^^^^^^^^ help: change this to: `(**self)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/ext/ustr.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | &**self [INFO] [stdout] | ^^^^^^^ help: try: `self` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] = note: `#[warn(clippy::explicit_auto_deref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stdout] --> src/ext/async_stream.rs:127:17 [INFO] [stdout] | [INFO] [stdout] 127 | let ref yielder = yielder; [INFO] [stdout] | ----^^^^^^^^^^^----------- help: try: `let yielder = &yielder;` [INFO] [stdout] | [INFO] [stdout] ::: src/pool/executor.rs:27:18 [INFO] [stdout] | [INFO] [stdout] 27 | Box::pin(try_stream! { [INFO] [stdout] | __________________- [INFO] [stdout] 28 | | let mut conn = pool.acquire().await?; [INFO] [stdout] 29 | | let mut s = conn.fetch_many(query); [INFO] [stdout] ... | [INFO] [stdout] 35 | | Ok(()) [INFO] [stdout] 36 | | }) [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stdout] = note: `#[warn(clippy::toplevel_ref_arg)]` on by default [INFO] [stdout] = note: this warning originates in the macro `try_stream` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-binding `let` on a future [INFO] [stdout] --> src/pool/inner.rs:149:21 [INFO] [stdout] | [INFO] [stdout] 149 | let _ = self.close(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider awaiting the future or dropping explicitly with `std::mem::drop` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_underscore_future [INFO] [stdout] = note: `#[warn(clippy::let_underscore_future)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/pool/inner.rs:204:12 [INFO] [stdout] | [INFO] [stdout] 204 | if !self.idle_conns.push(idle).is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `self.idle_conns.push(idle).is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/pool/inner.rs:424:5 [INFO] [stdout] | [INFO] [stdout] 424 | / options [INFO] [stdout] 425 | | .max_lifetime [INFO] [stdout] 426 | | .map_or(false, |max| live.created_at.elapsed() > max) [INFO] [stdout] | |_____________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_map_or [INFO] [stdout] = note: `#[warn(clippy::unnecessary_map_or)]` on by default [INFO] [stdout] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 426 - .map_or(false, |max| live.created_at.elapsed() > max) [INFO] [stdout] 426 + .is_some_and(|max| live.created_at.elapsed() > max) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/pool/inner.rs:431:5 [INFO] [stdout] | [INFO] [stdout] 431 | / options [INFO] [stdout] 432 | | .idle_timeout [INFO] [stdout] 433 | | .map_or(false, |timeout| idle.idle_since.elapsed() > timeout) [INFO] [stdout] | |_____________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_map_or [INFO] [stdout] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 433 - .map_or(false, |timeout| idle.idle_since.elapsed() > timeout) [INFO] [stdout] 433 + .is_some_and(|timeout| idle.idle_since.elapsed() > timeout) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/pool/inner.rs:477:36 [INFO] [stdout] | [INFO] [stdout] 477 | let pool_weak = Arc::downgrade(&pool); [INFO] [stdout] | ^^^^^ help: change this to: `pool` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this call to `as_ref.map(...)` does nothing [INFO] [stdout] --> src/pool/options.rs:102:26 [INFO] [stdout] | [INFO] [stdout] 102 | parent_pool: self.parent_pool.as_ref().map(Pool::clone), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `self.parent_pool.clone()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_asref [INFO] [stdout] = note: `#[warn(clippy::useless_asref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enclosing `Ok` and `?` operator are unneeded [INFO] [stdout] --> src/pool/mod.rs:379:9 [INFO] [stdout] | [INFO] [stdout] 379 | Ok(Transaction::begin(MaybePoolConnection::PoolConnection(self.acquire().await?)).await?) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_question_mark [INFO] [stdout] = note: `#[warn(clippy::needless_question_mark)]` on by default [INFO] [stdout] help: remove the enclosing `Ok` and `?` operator [INFO] [stdout] | [INFO] [stdout] 379 - Ok(Transaction::begin(MaybePoolConnection::PoolConnection(self.acquire().await?)).await?) [INFO] [stdout] 379 + Transaction::begin(MaybePoolConnection::PoolConnection(self.acquire().await?)).await [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type parameter `DB` goes unused in function definition [INFO] [stdout] --> src/pool/mod.rs:645:23 [INFO] [stdout] | [INFO] [stdout] 645 | fn deadline_as_timeout(deadline: Instant) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_type_parameters [INFO] [stdout] = note: `#[warn(clippy::extra_unused_type_parameters)]` on by default [INFO] [stdout] help: consider removing the parameter [INFO] [stdout] | [INFO] [stdout] 645 - fn deadline_as_timeout(deadline: Instant) -> Result { [INFO] [stdout] 645 + fn deadline_as_timeout(deadline: Instant) -> Result { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enclosing `Ok` and `?` operator are unneeded [INFO] [stdout] --> src/connection.rs:146:31 [INFO] [stdout] | [INFO] [stdout] 146 | Box::pin(async move { Ok(Self::connect_with(&options?).await?) }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_question_mark [INFO] [stdout] help: remove the enclosing `Ok` and `?` operator [INFO] [stdout] | [INFO] [stdout] 146 - Box::pin(async move { Ok(Self::connect_with(&options?).await?) }) [INFO] [stdout] 146 + Box::pin(async move { Self::connect_with(&options?).await }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this pattern creates a reference to a reference [INFO] [stdout] --> src/query.rs:49:27 [INFO] [stdout] | [INFO] [stdout] 49 | Either::Right(ref statement) => statement.sql(), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 49 - Either::Right(ref statement) => statement.sql(), [INFO] [stdout] 49 + Either::Right(statement) => statement.sql(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/query.rs:56:50 [INFO] [stdout] | [INFO] [stdout] 56 | Either::Right(ref statement) => Some(&statement), [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `statement` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/query.rs:334:48 [INFO] [stdout] | [INFO] [stdout] 334 | mapper: move |row| f(row).and_then(|o| g(o)), [INFO] [stdout] | ^^^^^^^^ help: replace the closure with the function itself: `&mut g` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stdout] --> src/ext/async_stream.rs:127:17 [INFO] [stdout] | [INFO] [stdout] 127 | let ref yielder = yielder; [INFO] [stdout] | ----^^^^^^^^^^^----------- help: try: `let yielder = &yielder;` [INFO] [stdout] | [INFO] [stdout] ::: src/query.rs:374:18 [INFO] [stdout] | [INFO] [stdout] 374 | Box::pin(try_stream! { [INFO] [stdout] | __________________- [INFO] [stdout] 375 | | let mut s = executor.fetch_many(self.inner); [INFO] [stdout] 376 | | [INFO] [stdout] 377 | | while let Some(v) = s.try_next().await? { [INFO] [stdout] ... | [INFO] [stdout] 386 | | Ok(()) [INFO] [stdout] 387 | | }) [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stdout] = note: this warning originates in the macro `try_stream` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StatementCache` has a public `len` method, but no `is_empty` method [INFO] [stdout] --> src/common/statement_cache.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_without_is_empty [INFO] [stdout] = note: `#[warn(clippy::len_without_is_empty)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/io/buf.rs:25:27 [INFO] [stdout] | [INFO] [stdout] 25 | memchr(b'\0', &self).ok_or_else(|| err_protocol!("expected NUL in byte sequence"))?; [INFO] [stdout] | ^^^^^ help: change this to: `self` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/io/buf.rs:43:23 [INFO] [stdout] | [INFO] [stdout] 43 | from_utf8(&*bytes) [INFO] [stdout] | ^^^^^^^ help: try: `&bytes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/logger.rs:103:55 [INFO] [stdout] | [INFO] [stdout] 103 | let mut summary = parse_query_summary(&self.sql); [INFO] [stdout] | ^^^^^^^^^ help: change this to: `self.sql` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/logger.rs:110:29 [INFO] [stdout] | [INFO] [stdout] 110 | ... &self.sql, [INFO] [stdout] | ^^^^^^^^^ help: change this to: `self.sql` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the method `try_write` doesn't need a mutable reference [INFO] [stdout] --> src/net/socket/mod.rs:104:41 [INFO] [stdout] | [INFO] [stdout] 104 | match this.socket.try_write(&mut this.buf) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] = note: `#[warn(clippy::unnecessary_mut_passed)]` on by default [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 104 - match this.socket.try_write(&mut this.buf) { [INFO] [stdout] 104 + match this.socket.try_write(&this.buf) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/net/socket/mod.rs:104:41 [INFO] [stdout] | [INFO] [stdout] 104 | match this.socket.try_write(&mut this.buf) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: change this to: `this.buf` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking sqlx-etorreborre-postgres v0.7.9 [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/query.rs:469:40 [INFO] [stdout] | [INFO] [stdout] 468 | statement: &'q >::Statement, [INFO] [stdout] | -- -- the lifetime is named here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is named here [INFO] [stdout] 469 | ) -> Query<'q, DB, >::Arguments> [INFO] [stdout] | -- ^^ the same lifetime is elided here [INFO] [stdout] | | [INFO] [stdout] | the same lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: consistently use `'q` [INFO] [stdout] | [INFO] [stdout] 469 - ) -> Query<'q, DB, >::Arguments> [INFO] [stdout] 469 + ) -> Query<'q, DB, >::Arguments> [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/query_as.rs:375:45 [INFO] [stdout] | [INFO] [stdout] 374 | statement: &'q >::Statement, [INFO] [stdout] | -- -- the lifetime is named here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is named here [INFO] [stdout] 375 | ) -> QueryAs<'q, DB, O, >::Arguments> [INFO] [stdout] | -- ^^ the same lifetime is elided here [INFO] [stdout] | | [INFO] [stdout] | the same lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: consistently use `'q` [INFO] [stdout] | [INFO] [stdout] 375 - ) -> QueryAs<'q, DB, O, >::Arguments> [INFO] [stdout] 375 + ) -> QueryAs<'q, DB, O, >::Arguments> [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/query_scalar.rs:354:49 [INFO] [stdout] | [INFO] [stdout] 353 | statement: &'q >::Statement, [INFO] [stdout] | -- -- the lifetime is named here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is named here [INFO] [stdout] 354 | ) -> QueryScalar<'q, DB, O, >::Arguments> [INFO] [stdout] | -- ^^ the same lifetime is elided here [INFO] [stdout] | | [INFO] [stdout] | the same lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: consistently use `'q` [INFO] [stdout] | [INFO] [stdout] 354 - ) -> QueryScalar<'q, DB, O, >::Arguments> [INFO] [stdout] 354 + ) -> QueryScalar<'q, DB, O, >::Arguments> [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling sqlx-sqlite v0.7.4 [INFO] [stderr] Checking sqlx-etorreborre-sqlite v0.7.9 [INFO] [stderr] Compiling sqlx-macros-core v0.7.4 [INFO] [stderr] Compiling sqlx-macros v0.7.4 [INFO] [stderr] Checking sqlx-etorreborre v0.7.9 [INFO] [stdout] warning: lint `clippy::disallowed_method` has been renamed to `clippy::disallowed_methods` [INFO] [stdout] --> src/lib.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | #![deny(clippy::disallowed_method)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use the new name: `clippy::disallowed_methods` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `crate` references the macro call's crate [INFO] [stdout] --> src/ext/async_stream.rs:124:9 [INFO] [stdout] | [INFO] [stdout] 124 | crate::ext::async_stream::TryAsyncStream::new(move |yielder| async move { [INFO] [stdout] | ^^^^^ help: to reference the macro definition's crate, use: `$crate` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#crate_in_macro_def [INFO] [stdout] = note: `#[warn(clippy::crate_in_macro_def)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `postgres` [INFO] [stdout] --> src/pool/mod.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | feature = "postgres", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `postgres` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `mysql` [INFO] [stdout] --> src/pool/mod.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | feature = "mysql", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `mysql` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `mssql` [INFO] [stdout] --> src/pool/mod.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | feature = "mssql", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `mssql` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `sqlite` [INFO] [stdout] --> src/pool/mod.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | feature = "sqlite" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `sqlite` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `postgres` [INFO] [stdout] --> src/pool/mod.rs:545:9 [INFO] [stdout] | [INFO] [stdout] 545 | feature = "postgres", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `postgres` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `mysql` [INFO] [stdout] --> src/pool/mod.rs:546:9 [INFO] [stdout] | [INFO] [stdout] 546 | feature = "mysql", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `mysql` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `mssql` [INFO] [stdout] --> src/pool/mod.rs:547:9 [INFO] [stdout] | [INFO] [stdout] 547 | feature = "mssql", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `mssql` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `sqlite` [INFO] [stdout] --> src/pool/mod.rs:548:9 [INFO] [stdout] | [INFO] [stdout] 548 | feature = "sqlite" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `sqlite` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/pool/executor.rs:18:31 [INFO] [stdout] | [INFO] [stdout] 18 | fn fetch_many<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 23 | E: Execute<'q, Self::Database>, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] = note: `#[warn(clippy::multiple_bound_locations)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/pool/executor.rs:39:35 [INFO] [stdout] | [INFO] [stdout] 39 | fn fetch_optional<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 44 | E: Execute<'q, Self::Database>, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/executor.rs:37:28 [INFO] [stdout] | [INFO] [stdout] 37 | fn execute<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 43 | E: Execute<'q, Self::Database>, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/executor.rs:49:33 [INFO] [stdout] | [INFO] [stdout] 49 | fn execute_many<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 55 | E: Execute<'q, Self::Database>, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/executor.rs:68:26 [INFO] [stdout] | [INFO] [stdout] 68 | fn fetch<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 74 | E: Execute<'q, Self::Database>, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/executor.rs:88:31 [INFO] [stdout] | [INFO] [stdout] 88 | fn fetch_many<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 100 | E: Execute<'q, Self::Database>; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/executor.rs:103:30 [INFO] [stdout] | [INFO] [stdout] 103 | fn fetch_all<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 109 | E: Execute<'q, Self::Database>, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/executor.rs:115:30 [INFO] [stdout] | [INFO] [stdout] 115 | fn fetch_one<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 121 | E: Execute<'q, Self::Database>, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/executor.rs:132:35 [INFO] [stdout] | [INFO] [stdout] 132 | fn fetch_optional<'e, 'q: 'e, E: 'q>( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 138 | E: Execute<'q, Self::Database>; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `postgres` [INFO] [stdout] --> src/query_builder.rs:597:17 [INFO] [stdout] | [INFO] [stdout] 597 | #[cfg(all(test, feature = "postgres"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `_rt-async-std`, `_rt-tokio`, `_tls-native-tls`, `_tls-none`, `_tls-rustls`, `any`, `async-io`, `async-std`, `bigdecimal`, `bit-vec`, `bstr`, `chrono`, `crc`, `default`, `digest`, `encoding_rs`, `ipnetwork`, `json`, `mac_address`, `migrate`, `native-tls`, `num-bigint`, `offline`, `regex`, `rust_decimal`, `rustls`, `rustls-pemfile`, `serde`, `serde_json`, `sha1`, `sha2`, `time`, `tokio`, `tokio-stream`, and `uuid` and 1 more [INFO] [stdout] = help: consider adding `postgres` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty line after doc comment [INFO] [stdout] --> src/query_builder.rs:193:5 [INFO] [stdout] | [INFO] [stdout] 193 | / /// ``` [INFO] [stdout] 194 | | [INFO] [stdout] | |_^ [INFO] [stdout] 195 | pub fn separated<'qb, Sep>(&'qb mut self, separator: Sep) -> Separated<'qb, 'args, DB, Sep> [INFO] [stdout] | ---------------- the comment documents this function [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_doc_comments [INFO] [stdout] = note: `#[warn(clippy::empty_line_after_doc_comments)]` on by default [INFO] [stdout] = help: if the empty line is unintentional, remove it [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression borrows a value the compiler would automatically borrow [INFO] [stdout] --> src/ext/ustr.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | (&**self).hash(state); [INFO] [stdout] | ^^^^^^^^^ help: change this to: `(**self)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/ext/ustr.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | &**self [INFO] [stdout] | ^^^^^^^ help: try: `self` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] = note: `#[warn(clippy::explicit_auto_deref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stdout] --> src/ext/async_stream.rs:127:17 [INFO] [stdout] | [INFO] [stdout] 127 | let ref yielder = yielder; [INFO] [stdout] | ----^^^^^^^^^^^----------- help: try: `let yielder = &yielder;` [INFO] [stdout] | [INFO] [stdout] ::: src/pool/executor.rs:27:18 [INFO] [stdout] | [INFO] [stdout] 27 | Box::pin(try_stream! { [INFO] [stdout] | __________________- [INFO] [stdout] 28 | | let mut conn = pool.acquire().await?; [INFO] [stdout] 29 | | let mut s = conn.fetch_many(query); [INFO] [stdout] ... | [INFO] [stdout] 35 | | Ok(()) [INFO] [stdout] 36 | | }) [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stdout] = note: `#[warn(clippy::toplevel_ref_arg)]` on by default [INFO] [stdout] = note: this warning originates in the macro `try_stream` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-binding `let` on a future [INFO] [stdout] --> src/pool/inner.rs:149:21 [INFO] [stdout] | [INFO] [stdout] 149 | let _ = self.close(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider awaiting the future or dropping explicitly with `std::mem::drop` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_underscore_future [INFO] [stdout] = note: `#[warn(clippy::let_underscore_future)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/pool/inner.rs:204:12 [INFO] [stdout] | [INFO] [stdout] 204 | if !self.idle_conns.push(idle).is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `self.idle_conns.push(idle).is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/pool/inner.rs:424:5 [INFO] [stdout] | [INFO] [stdout] 424 | / options [INFO] [stdout] 425 | | .max_lifetime [INFO] [stdout] 426 | | .map_or(false, |max| live.created_at.elapsed() > max) [INFO] [stdout] | |_____________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_map_or [INFO] [stdout] = note: `#[warn(clippy::unnecessary_map_or)]` on by default [INFO] [stdout] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 426 - .map_or(false, |max| live.created_at.elapsed() > max) [INFO] [stdout] 426 + .is_some_and(|max| live.created_at.elapsed() > max) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/pool/inner.rs:431:5 [INFO] [stdout] | [INFO] [stdout] 431 | / options [INFO] [stdout] 432 | | .idle_timeout [INFO] [stdout] 433 | | .map_or(false, |timeout| idle.idle_since.elapsed() > timeout) [INFO] [stdout] | |_____________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_map_or [INFO] [stdout] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 433 - .map_or(false, |timeout| idle.idle_since.elapsed() > timeout) [INFO] [stdout] 433 + .is_some_and(|timeout| idle.idle_since.elapsed() > timeout) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/pool/inner.rs:477:36 [INFO] [stdout] | [INFO] [stdout] 477 | let pool_weak = Arc::downgrade(&pool); [INFO] [stdout] | ^^^^^ help: change this to: `pool` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this call to `as_ref.map(...)` does nothing [INFO] [stdout] --> src/pool/options.rs:102:26 [INFO] [stdout] | [INFO] [stdout] 102 | parent_pool: self.parent_pool.as_ref().map(Pool::clone), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `self.parent_pool.clone()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_asref [INFO] [stdout] = note: `#[warn(clippy::useless_asref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enclosing `Ok` and `?` operator are unneeded [INFO] [stdout] --> src/pool/mod.rs:379:9 [INFO] [stdout] | [INFO] [stdout] 379 | Ok(Transaction::begin(MaybePoolConnection::PoolConnection(self.acquire().await?)).await?) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_question_mark [INFO] [stdout] = note: `#[warn(clippy::needless_question_mark)]` on by default [INFO] [stdout] help: remove the enclosing `Ok` and `?` operator [INFO] [stdout] | [INFO] [stdout] 379 - Ok(Transaction::begin(MaybePoolConnection::PoolConnection(self.acquire().await?)).await?) [INFO] [stdout] 379 + Transaction::begin(MaybePoolConnection::PoolConnection(self.acquire().await?)).await [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type parameter `DB` goes unused in function definition [INFO] [stdout] --> src/pool/mod.rs:645:23 [INFO] [stdout] | [INFO] [stdout] 645 | fn deadline_as_timeout(deadline: Instant) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_type_parameters [INFO] [stdout] = note: `#[warn(clippy::extra_unused_type_parameters)]` on by default [INFO] [stdout] help: consider removing the parameter [INFO] [stdout] | [INFO] [stdout] 645 - fn deadline_as_timeout(deadline: Instant) -> Result { [INFO] [stdout] 645 + fn deadline_as_timeout(deadline: Instant) -> Result { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enclosing `Ok` and `?` operator are unneeded [INFO] [stdout] --> src/connection.rs:146:31 [INFO] [stdout] | [INFO] [stdout] 146 | Box::pin(async move { Ok(Self::connect_with(&options?).await?) }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_question_mark [INFO] [stdout] help: remove the enclosing `Ok` and `?` operator [INFO] [stdout] | [INFO] [stdout] 146 - Box::pin(async move { Ok(Self::connect_with(&options?).await?) }) [INFO] [stdout] 146 + Box::pin(async move { Self::connect_with(&options?).await }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this pattern creates a reference to a reference [INFO] [stdout] --> src/query.rs:49:27 [INFO] [stdout] | [INFO] [stdout] 49 | Either::Right(ref statement) => statement.sql(), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 49 - Either::Right(ref statement) => statement.sql(), [INFO] [stdout] 49 + Either::Right(statement) => statement.sql(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/query.rs:56:50 [INFO] [stdout] | [INFO] [stdout] 56 | Either::Right(ref statement) => Some(&statement), [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `statement` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/query.rs:334:48 [INFO] [stdout] | [INFO] [stdout] 334 | mapper: move |row| f(row).and_then(|o| g(o)), [INFO] [stdout] | ^^^^^^^^ help: replace the closure with the function itself: `&mut g` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stdout] --> src/ext/async_stream.rs:127:17 [INFO] [stdout] | [INFO] [stdout] 127 | let ref yielder = yielder; [INFO] [stdout] | ----^^^^^^^^^^^----------- help: try: `let yielder = &yielder;` [INFO] [stdout] | [INFO] [stdout] ::: src/query.rs:374:18 [INFO] [stdout] | [INFO] [stdout] 374 | Box::pin(try_stream! { [INFO] [stdout] | __________________- [INFO] [stdout] 375 | | let mut s = executor.fetch_many(self.inner); [INFO] [stdout] 376 | | [INFO] [stdout] 377 | | while let Some(v) = s.try_next().await? { [INFO] [stdout] ... | [INFO] [stdout] 386 | | Ok(()) [INFO] [stdout] 387 | | }) [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stdout] = note: this warning originates in the macro `try_stream` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StatementCache` has a public `len` method, but no `is_empty` method [INFO] [stdout] --> src/common/statement_cache.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_without_is_empty [INFO] [stdout] = note: `#[warn(clippy::len_without_is_empty)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/io/buf.rs:25:27 [INFO] [stdout] | [INFO] [stdout] 25 | memchr(b'\0', &self).ok_or_else(|| err_protocol!("expected NUL in byte sequence"))?; [INFO] [stdout] | ^^^^^ help: change this to: `self` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/io/buf.rs:43:23 [INFO] [stdout] | [INFO] [stdout] 43 | from_utf8(&*bytes) [INFO] [stdout] | ^^^^^^^ help: try: `&bytes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/logger.rs:103:55 [INFO] [stdout] | [INFO] [stdout] 103 | let mut summary = parse_query_summary(&self.sql); [INFO] [stdout] | ^^^^^^^^^ help: change this to: `self.sql` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/logger.rs:110:29 [INFO] [stdout] | [INFO] [stdout] 110 | ... &self.sql, [INFO] [stdout] | ^^^^^^^^^ help: change this to: `self.sql` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the method `try_write` doesn't need a mutable reference [INFO] [stdout] --> src/net/socket/mod.rs:104:41 [INFO] [stdout] | [INFO] [stdout] 104 | match this.socket.try_write(&mut this.buf) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] = note: `#[warn(clippy::unnecessary_mut_passed)]` on by default [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 104 - match this.socket.try_write(&mut this.buf) { [INFO] [stdout] 104 + match this.socket.try_write(&this.buf) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/net/socket/mod.rs:104:41 [INFO] [stdout] | [INFO] [stdout] 104 | match this.socket.try_write(&mut this.buf) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: change this to: `this.buf` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/query.rs:469:40 [INFO] [stdout] | [INFO] [stdout] 468 | statement: &'q >::Statement, [INFO] [stdout] | -- -- the lifetime is named here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is named here [INFO] [stdout] 469 | ) -> Query<'q, DB, >::Arguments> [INFO] [stdout] | -- ^^ the same lifetime is elided here [INFO] [stdout] | | [INFO] [stdout] | the same lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: consistently use `'q` [INFO] [stdout] | [INFO] [stdout] 469 - ) -> Query<'q, DB, >::Arguments> [INFO] [stdout] 469 + ) -> Query<'q, DB, >::Arguments> [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/query_as.rs:375:45 [INFO] [stdout] | [INFO] [stdout] 374 | statement: &'q >::Statement, [INFO] [stdout] | -- -- the lifetime is named here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is named here [INFO] [stdout] 375 | ) -> QueryAs<'q, DB, O, >::Arguments> [INFO] [stdout] | -- ^^ the same lifetime is elided here [INFO] [stdout] | | [INFO] [stdout] | the same lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: consistently use `'q` [INFO] [stdout] | [INFO] [stdout] 375 - ) -> QueryAs<'q, DB, O, >::Arguments> [INFO] [stdout] 375 + ) -> QueryAs<'q, DB, O, >::Arguments> [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/query_scalar.rs:354:49 [INFO] [stdout] | [INFO] [stdout] 353 | statement: &'q >::Statement, [INFO] [stdout] | -- -- the lifetime is named here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is named here [INFO] [stdout] 354 | ) -> QueryScalar<'q, DB, O, >::Arguments> [INFO] [stdout] | -- ^^ the same lifetime is elided here [INFO] [stdout] | | [INFO] [stdout] | the same lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: consistently use `'q` [INFO] [stdout] | [INFO] [stdout] 354 - ) -> QueryScalar<'q, DB, O, >::Arguments> [INFO] [stdout] 354 + ) -> QueryScalar<'q, DB, O, >::Arguments> [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 24s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: sqlx-etorreborre-postgres v0.7.9, sqlx-postgres v0.7.4 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "0a32dc177b291946d49399f29c480c28b85af0c51b913cccae07d1a627ec101b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0a32dc177b291946d49399f29c480c28b85af0c51b913cccae07d1a627ec101b", kill_on_drop: false }` [INFO] [stdout] 0a32dc177b291946d49399f29c480c28b85af0c51b913cccae07d1a627ec101b