[INFO] cloning repository https://github.com/mbarkouski/rb_migrator
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mbarkouski/rb_migrator" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmbarkouski%2Frb_migrator", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmbarkouski%2Frb_migrator'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 21b78a53542e15bf1328b29f6e5c46a51889133a
[INFO] checking mbarkouski/rb_migrator against 52995a223f2919dd3e2e427231db90a257350ded for pr-129249-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmbarkouski%2Frb_migrator" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/mbarkouski/rb_migrator
[INFO] finished tweaking git repo https://github.com/mbarkouski/rb_migrator
[INFO] tweaked toml for git repo https://github.com/mbarkouski/rb_migrator written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/mbarkouski/rb_migrator on toolchain 52995a223f2919dd3e2e427231db90a257350ded
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/mbarkouski/rb_migrator already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 8b864ab9533101e7f62541ab5918363bb0dfca71fac7bb99234ce0025bf706b7
[INFO] running `Command { std: "docker" "start" "8b864ab9533101e7f62541ab5918363bb0dfca71fac7bb99234ce0025bf706b7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8b864ab9533101e7f62541ab5918363bb0dfca71fac7bb99234ce0025bf706b7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8b864ab9533101e7f62541ab5918363bb0dfca71fac7bb99234ce0025bf706b7" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8b864ab9533101e7f62541ab5918363bb0dfca71fac7bb99234ce0025bf706b7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8b864ab9533101e7f62541ab5918363bb0dfca71fac7bb99234ce0025bf706b7" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling cc v1.0.104
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]    Compiling serde v1.0.203
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]    Compiling regex-syntax v0.8.4
[INFO] [stderr]    Compiling thiserror v1.0.61
[INFO] [stderr]    Compiling openssl v0.10.64
[INFO] [stderr]    Compiling phf v0.11.2
[INFO] [stderr]     Checking tinyvec v1.7.0
[INFO] [stderr]     Checking anstyle-parse v0.2.4
[INFO] [stderr]     Checking bytes v1.6.0
[INFO] [stderr]    Compiling syn v2.0.68
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking anstyle v1.0.7
[INFO] [stderr]     Checking colorchoice v1.0.1
[INFO] [stderr]     Checking anstyle-query v1.1.0
[INFO] [stderr]     Checking phf_shared v0.11.2
[INFO] [stderr]     Checking ucd-trie v0.1.6
[INFO] [stderr]    Compiling unicode-segmentation v1.11.0
[INFO] [stderr]     Checking indexmap v2.2.6
[INFO] [stderr]     Checking chrono v0.4.38
[INFO] [stderr]     Checking anstream v0.6.14
[INFO] [stderr]     Checking regex v1.10.5
[INFO] [stderr]     Checking match_cfg v0.1.0
[INFO] [stderr]     Checking clap_lex v0.7.1
[INFO] [stderr]     Checking uuid v1.9.1
[INFO] [stderr]     Checking either v1.13.0
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]     Checking clap_builder v4.5.8
[INFO] [stderr]     Checking combine v4.6.7
[INFO] [stderr]     Checking unicode-normalization v0.1.23
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking crossbeam-queue v0.3.11
[INFO] [stderr]     Checking crossbeam-channel v0.5.13
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking socket2 v0.5.7
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking hostname v0.3.1
[INFO] [stderr]    Compiling openssl-sys v0.9.102
[INFO] [stderr]    Compiling lz4-sys v1.9.5
[INFO] [stderr]    Compiling clickhouse-rs-cityhash-sys v0.1.2 (/opt/rustwide/workdir/clickhouse-rs/clickhouse-rs-cityhash-sys)
[INFO] [stderr]     Checking crossbeam-deque v0.8.5
[INFO] [stderr]     Checking idna v0.5.0
[INFO] [stderr]    Compiling native-tls v0.2.12
[INFO] [stderr]     Checking crossbeam v0.8.4
[INFO] [stderr]     Checking url v2.5.2
[INFO] [stderr]    Compiling regex-automata v0.4.7
[INFO] [stderr]    Compiling confique-macro v0.0.9
[INFO] [stderr]    Compiling serde_derive v1.0.203
[INFO] [stderr]    Compiling thiserror-impl v1.0.61
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling tokio-macros v2.3.0
[INFO] [stderr]    Compiling pin-project-internal v1.1.5
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling clap_derive v4.5.8
[INFO] [stderr]     Checking tokio v1.38.0
[INFO] [stderr]    Compiling parse-zoneinfo v0.3.1
[INFO] [stderr]     Checking pin-project v1.1.5
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]    Compiling chrono-tz-build v0.2.1
[INFO] [stderr]     Checking pest v2.7.11
[INFO] [stderr]    Compiling chrono-tz v0.8.6
[INFO] [stderr]     Checking clap v4.5.8
[INFO] [stderr]    Compiling pest_meta v2.7.11
[INFO] [stderr]    Compiling pest_generator v2.7.11
[INFO] [stderr]    Compiling pest_derive v2.7.11
[INFO] [stderr]     Checking log v0.4.22
[INFO] [stderr]     Checking json5 v0.4.1
[INFO] [stderr]     Checking toml v0.5.11
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking env_filter v0.1.0
[INFO] [stderr]     Checking env_logger v0.11.3
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking confique v0.2.5
[INFO] [stderr]     Checking lz4 v1.25.0
[INFO] [stderr]     Checking clickhouse-rs v1.1.0-alpha.1 (/opt/rustwide/workdir/clickhouse-rs)
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> clickhouse-rs/src/types/column/mod.rs:500:15
[INFO] [stdout]     |
[INFO] [stdout] 500 |     data: Arc<(dyn ColumnData + Sync + Send + 'static)>,
[INFO] [stdout]     |               ^                                      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 500 -     data: Arc<(dyn ColumnData + Sync + Send + 'static)>,
[INFO] [stdout] 500 +     data: Arc<dyn ColumnData + Sync + Send + 'static>,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `errors`
[INFO] [stdout]   --> clickhouse-rs/src/types/value.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     errors,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::NaiveDateTime::from_timestamp_opt`: use `DateTime::from_timestamp` instead
[INFO] [stdout]    --> clickhouse-rs/src/types/column/datetime64.rs:159:20
[INFO] [stdout]     |
[INFO] [stdout] 159 |     NaiveDateTime::from_timestamp_opt(sec, nsec as u32)
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::NaiveDateTime::from_timestamp_opt`: use `DateTime::from_timestamp` instead
[INFO] [stdout]    --> clickhouse-rs/src/types/column/iter/mod.rs:482:32
[INFO] [stdout]     |
[INFO] [stdout] 482 |                 NaiveDateTime::from_timestamp_opt(i64::from(current_value), 0).unwrap()
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ColumnDataExt` is never used
[INFO] [stdout]   --> clickhouse-rs/src/types/column/column_data.rs:53:18
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub(crate) trait ColumnDataExt {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Sliceable` is never used
[INFO] [stdout]   --> clickhouse-rs/src/types/block/mod.rs:45:11
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub trait Sliceable {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `bool`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<bool as Into<bool>::into(val) to avoid triggering this lint
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `u8`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<u8 as Into<u8>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `u16`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<u16 as Into<u16>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `u32`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<u32 as Into<u32>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `u64`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<u64 as Into<u64>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `u128`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<u128 as Into<u128>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `i8`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<i8 as Into<i8>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `i16`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<i16 as Into<i16>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `i32`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<i32 as Into<i32>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `i64`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<i64 as Into<i64>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `i128`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<i128 as Into<i128>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `f32`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<f32 as Into<f32>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `f64`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<f64 as Into<f64>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `Decimal`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<Decimal as Into<Decimal>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `[u8; 4]`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<[u8; 4] as Into<[u8; 4]>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `[u8; 16]`
[INFO] [stdout]    --> clickhouse-rs/src/types/value.rs:346:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |   macro_rules! value_from {
[INFO] [stdout] ...
[INFO] [stdout] 346 |                       Value::$k(v.into())
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | / value_from! {
[INFO] [stdout] 454 | |     bool: Bool,
[INFO] [stdout] 455 | |     u8: UInt8,
[INFO] [stdout] 456 | |     u16: UInt16,
[INFO] [stdout] ...   |
[INFO] [stdout] 473 | |     [u8; 16]: Ipv6
[INFO] [stdout] 474 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<[u8; 16] as Into<[u8; 16]>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/lib.rs:369:21
[INFO] [stdout]     |
[INFO] [stdout] 369 |     pub fn query<Q>(&mut self, sql: Q) -> QueryResult
[INFO] [stdout]     |                     ^^^^^^^^^             ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided 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: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 369 |     pub fn query<Q>(&mut self, sql: Q) -> QueryResult<'_>
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/binary/parser.rs:28:62
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub(crate) fn new(reader: T, info: &'i TransportInfo) -> Parser<T> {
[INFO] [stdout]    |                                         --                   ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         the 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 `'i`
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub(crate) fn new(reader: T, info: &'i TransportInfo) -> Parser<'i, T> {
[INFO] [stdout]    |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/mod.rs:204:22
[INFO] [stdout]     |
[INFO] [stdout] 204 |     pub(crate) fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |                      ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 204 |     pub(crate) fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/column/array.rs:85:11
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]    |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |           |
[INFO] [stdout]    |           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]    |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/chrono_datetime.rs:103:11
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/chrono_datetime.rs:205:11
[INFO] [stdout]     |
[INFO] [stdout] 205 |     fn at(&self, _index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                    ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 205 |     fn at(&self, _index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/column/chunk.rs:46:11
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]    |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |           |
[INFO] [stdout]    |           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]    |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/column/column_data.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn at(&self, index: usize) -> ValueRef;
[INFO] [stdout]    |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |           |
[INFO] [stdout]    |           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn at(&self, index: usize) -> ValueRef<'_>;
[INFO] [stdout]    |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/column/concat.rs:59:11
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]    |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |           |
[INFO] [stdout]    |           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]    |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/date.rs:211:11
[INFO] [stdout]     |
[INFO] [stdout] 211 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 211 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/column/datetime64.rs:74:11
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]    |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |           |
[INFO] [stdout]    |           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]    |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/decimal.rs:170:11
[INFO] [stdout]     |
[INFO] [stdout] 170 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 170 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/decimal.rs:242:11
[INFO] [stdout]     |
[INFO] [stdout] 242 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 242 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/decimal.rs:293:11
[INFO] [stdout]     |
[INFO] [stdout] 293 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 293 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/column/enums.rs:74:11
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]    |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |           |
[INFO] [stdout]    |           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]    |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/enums.rs:126:11
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/enums.rs:176:11
[INFO] [stdout]     |
[INFO] [stdout] 176 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 176 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/enums.rs:316:11
[INFO] [stdout]     |
[INFO] [stdout] 316 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 316 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/enums.rs:368:11
[INFO] [stdout]     |
[INFO] [stdout] 368 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 368 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/enums.rs:419:11
[INFO] [stdout]     |
[INFO] [stdout] 419 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 419 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/column/fixed_string.rs:85:11
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]    |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |           |
[INFO] [stdout]    |           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]    |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/fixed_string.rs:157:11
[INFO] [stdout]     |
[INFO] [stdout] 157 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 157 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/fixed_string.rs:198:11
[INFO] [stdout]     |
[INFO] [stdout] 198 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 198 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/column/ip.rs:23:19
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn get(inner: &[u8], index: usize) -> ValueRef;
[INFO] [stdout]    |                   ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn get(inner: &[u8], index: usize) -> ValueRef<'_>;
[INFO] [stdout]    |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/column/ip.rs:56:19
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn get(inner: &[u8], index: usize) -> ValueRef {
[INFO] [stdout]    |                   ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn get(inner: &[u8], index: usize) -> ValueRef<'_> {
[INFO] [stdout]    |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/column/ip.rs:84:19
[INFO] [stdout]    |
[INFO] [stdout] 84 |     fn get(inner: &[u8], index: usize) -> ValueRef {
[INFO] [stdout]    |                   ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 84 |     fn get(inner: &[u8], index: usize) -> ValueRef<'_> {
[INFO] [stdout]    |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/ip.rs:112:19
[INFO] [stdout]     |
[INFO] [stdout] 112 |     fn get(inner: &[u8], index: usize) -> ValueRef {
[INFO] [stdout]     |                   ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 112 |     fn get(inner: &[u8], index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/ip.rs:306:11
[INFO] [stdout]     |
[INFO] [stdout] 306 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 306 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/low_cardinality.rs:331:11
[INFO] [stdout]     |
[INFO] [stdout] 331 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 331 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/column/map.rs:94:11
[INFO] [stdout]    |
[INFO] [stdout] 94 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]    |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |           |
[INFO] [stdout]    |           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 94 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]    |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/column/nullable.rs:76:11
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]    |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |           |
[INFO] [stdout]    |           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]    |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/numeric.rs:206:11
[INFO] [stdout]     |
[INFO] [stdout] 206 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 206 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/column/simple_agg_func.rs:54:11
[INFO] [stdout]    |
[INFO] [stdout] 54 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]    |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |           |
[INFO] [stdout]    |           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 54 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]    |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/string.rs:193:11
[INFO] [stdout]     |
[INFO] [stdout] 193 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 193 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/string.rs:245:11
[INFO] [stdout]     |
[INFO] [stdout] 245 |     fn at(&self, index: usize) -> ValueRef {
[INFO] [stdout]     |           ^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |           |
[INFO] [stdout]     |           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 245 |     fn at(&self, index: usize) -> ValueRef<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/column/string_pool.rs:131:27
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub(crate) fn strings(&self) -> StringIter {
[INFO] [stdout]     |                           ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub(crate) fn strings(&self) -> StringIter<'_> {
[INFO] [stdout]     |                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/value_ref.rs:328:16
[INFO] [stdout]     |
[INFO] [stdout] 328 |     fn from(s: &str) -> ValueRef {
[INFO] [stdout]     |                ^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 328 |     fn from(s: &str) -> ValueRef<'_> {
[INFO] [stdout]     |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/value_ref.rs:334:17
[INFO] [stdout]     |
[INFO] [stdout] 334 |     fn from(bs: &[u8]) -> ValueRef {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 334 |     fn from(bs: &[u8]) -> ValueRef<'_> {
[INFO] [stdout]     |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/options.rs:43:23
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub(crate) fn get(&self) -> Result<Cow<Options>> {
[INFO] [stdout]    |                       ^^^^^            ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub(crate) fn get(&self) -> Result<Cow<'_, Options>> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> clickhouse-rs/src/types/block/mod.rs:253:17
[INFO] [stdout]     |
[INFO] [stdout] 253 |     pub fn rows(&self) -> Rows<K> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 253 |     pub fn rows(&self) -> Rows<'_, K> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/block/compressed.rs:24:31
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub(crate) fn make<R>(reader: &mut R) -> CompressedReader<R> {
[INFO] [stdout]    |                               ^^^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                               |
[INFO] [stdout]    |                               the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub(crate) fn make<R>(reader: &mut R) -> CompressedReader<'_, R> {
[INFO] [stdout]    |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> clickhouse-rs/src/types/query_result/stream_blocks.rs:59:17
[INFO] [stdout]    |
[INFO] [stdout] 59 |         client: &mut ClientHandle,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 62 |     ) -> BlockStream {
[INFO] [stdout]    |          ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 62 |     ) -> BlockStream<'_> {
[INFO] [stdout]    |                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `clickhouse-rs` (lib) due to 16 previous errors; 48 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "8b864ab9533101e7f62541ab5918363bb0dfca71fac7bb99234ce0025bf706b7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8b864ab9533101e7f62541ab5918363bb0dfca71fac7bb99234ce0025bf706b7", kill_on_drop: false }`
[INFO] [stdout] 8b864ab9533101e7f62541ab5918363bb0dfca71fac7bb99234ce0025bf706b7
