[INFO] fetching crate fefix 0.7.0...
[INFO] testing fefix-0.7.0 against try#28f95933dc0727396c07b48d0a8cb5211b7fb472 for pr-154065-2
[INFO] extracting crate fefix 0.7.0 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate fefix 0.7.0
[INFO] finished tweaking crates.io crate fefix 0.7.0
[INFO] tweaked toml for crates.io crate fefix 0.7.0 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate fefix 0.7.0 on toolchain 28f95933dc0727396c07b48d0a8cb5211b7fb472
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "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" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 306 packages to latest compatible versions
[INFO] [stderr]       Adding bitvec v0.18.5 (available: v1.0.1)
[INFO] [stderr]       Adding criterion v0.3.6 (available: v0.8.2)
[INFO] [stderr]       Adding enum-as-inner v0.3.4 (available: v0.7.0)
[INFO] [stderr]       Adding generic-array v0.14.7 (available: v0.14.9)
[INFO] [stderr]       Adding heck v0.3.3 (available: v0.5.0)
[INFO] [stderr]       Adding indoc v1.0.9 (available: v2.0.7)
[INFO] [stderr]       Adding quick-xml v0.22.0 (available: v0.40.1)
[INFO] [stderr]       Adding roxmltree v0.14.1 (available: v0.21.1)
[INFO] [stderr]       Adding sqlx v0.5.13 (available: v0.9.0)
[INFO] [stderr]       Adding strum v0.22.0 (available: v0.28.0)
[INFO] [stderr]       Adding strum_macros v0.22.0 (available: v0.28.0)
[INFO] [stderr]       Adding syn v1.0.109 (available: v2.0.117)
[INFO] [stderr]       Adding thiserror v1.0.69 (available: v2.0.18)
[INFO] [stderr]       Adding tokio-util v0.6.10 (available: v0.7.18)
[INFO] [stderr]       Adding uuid v0.8.2 (available: v1.23.3)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 51ea87e603000402792f95b6e37f0e6dd241aaa8f891b3e7360b1a5222f6369d
[INFO] running `Command { std: "docker" "start" "51ea87e603000402792f95b6e37f0e6dd241aaa8f891b3e7360b1a5222f6369d", 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" "51ea87e603000402792f95b6e37f0e6dd241aaa8f891b3e7360b1a5222f6369d" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "51ea87e603000402792f95b6e37f0e6dd241aaa8f891b3e7360b1a5222f6369d", 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" "51ea87e603000402792f95b6e37f0e6dd241aaa8f891b3e7360b1a5222f6369d" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling untrusted v0.7.1
[INFO] [stderr]    Compiling spin v0.5.2
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]    Compiling mio v1.2.1
[INFO] [stderr]    Compiling socket2 v0.6.4
[INFO] [stderr]    Compiling either v1.16.0
[INFO] [stderr]    Compiling ahash v0.7.8
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling parking_lot_core v0.8.6
[INFO] [stderr]    Compiling log v0.4.32
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling instant v0.1.13
[INFO] [stderr]    Compiling unicode-segmentation v1.13.3
[INFO] [stderr]    Compiling base64 v0.13.1
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling parking_lot v0.11.2
[INFO] [stderr]    Compiling hashbrown v0.11.2
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling dirs-sys v0.3.7
[INFO] [stderr]    Compiling unicode-properties v0.1.4
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling unicode_categories v0.1.1
[INFO] [stderr]    Compiling crc-catalog v1.1.1
[INFO] [stderr]    Compiling openssl-sys v0.9.117
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling stringprep v0.1.5
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling rand v0.8.6
[INFO] [stderr]    Compiling crc v2.1.0
[INFO] [stderr]    Compiling dirs v4.0.0
[INFO] [stderr]    Compiling atoi v0.4.0
[INFO] [stderr]    Compiling futures-intrusive v0.4.2
[INFO] [stderr]    Compiling hashlink v0.7.0
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling whoami v1.6.1
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling hkdf v0.12.4
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling md-5 v0.10.6
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling sha-1 v0.10.1
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling roxmltree v0.14.1
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling quick-xml v0.22.0
[INFO] [stderr]    Compiling indoc v1.0.9
[INFO] [stderr]    Compiling openssl v0.10.81
[INFO] [stderr]    Compiling strum v0.22.0
[INFO] [stderr]    Compiling dotenv v0.15.0
[INFO] [stderr]    Compiling wyz v0.2.0
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]    Compiling bitflags v2.13.0
[INFO] [stderr]    Compiling funty v1.1.0
[INFO] [stderr]    Compiling radium v0.3.0
[INFO] [stderr]    Compiling uuid v0.8.2
[INFO] [stderr]    Compiling futures-timer v3.0.4
[INFO] [stderr]    Compiling sqlformat v0.1.8
[INFO] [stderr]    Compiling bitvec v0.18.5
[INFO] [stderr]    Compiling webpki v0.21.4
[INFO] [stderr]    Compiling sct v0.6.1
[INFO] [stderr]    Compiling darling_core v0.12.4
[INFO] [stderr]    Compiling rustls v0.19.1
[INFO] [stderr]    Compiling webpki-roots v0.21.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling strum_macros v0.22.0
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling fefix v0.7.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling tokio-util v0.6.10
[INFO] [stderr]    Compiling darling_macro v0.12.4
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling darling v0.12.4
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling fefix_derive v0.7.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling tokio-rustls v0.22.0
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling sqlx-rt v0.5.13
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling sqlx-core v0.5.13
[INFO] [stderr]    Compiling sqlx-macros v0.5.13
[INFO] [stderr]    Compiling sqlx v0.5.13
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]    --> src/lib.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 | #![cfg_attr(doc_cfg, feature(doc_cfg))]
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `docsrs`, `feature`, and `test` and 32 more
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> 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 name: `doc_cfg`
[INFO] [stdout]   --> src/buffer.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-bytes")))]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]    --> src/fix_values/date.rs:114:16
[INFO] [stdout]     |
[INFO] [stdout] 114 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]     |                ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]    --> src/fix_values/date.rs:125:16
[INFO] [stdout]     |
[INFO] [stdout] 125 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]     |                ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]    --> src/fix_values/time.rs:144:16
[INFO] [stdout]     |
[INFO] [stdout] 144 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]     |                ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/timestamp.rs:55:16
[INFO] [stdout]    |
[INFO] [stdout] 55 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/timestamp.rs:65:16
[INFO] [stdout]    |
[INFO] [stdout] 65 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/tz.rs:60:16
[INFO] [stdout]    |
[INFO] [stdout] 60 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/tz.rs:67:16
[INFO] [stdout]    |
[INFO] [stdout] 67 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]  --> src/fix_values/utils_chrono.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider using a Cargo feature instead
[INFO] [stdout]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]            [lints.rust]
[INFO] [stdout]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/utils_chrono.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/utils_chrono.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 62 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::Environment`
[INFO] [stdout]  --> src/session/backends.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::Environment;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tagvalue::FvWrite`
[INFO] [stdout]  --> src/session/backends.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::tagvalue::FvWrite;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::future::Fuse`
[INFO] [stdout]  --> src/session/event_loop.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::future::Fuse;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::future::Ready`
[INFO] [stdout]  --> src/session/event_loop.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use futures::future::Ready;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::dict::IsFieldDefinition`
[INFO] [stdout]   --> src/tagvalue/mod.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | use crate::dict::IsFieldDefinition;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/tagvalue/tokio_decoder.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-tokio")))]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `chrono::Date`: Use `NaiveDate` or `DateTime<Tz>` instead
[INFO] [stdout]    --> src/fix_values/date.rs:115:51
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn to_chrono_utc(&self) -> Option<chrono::Date<chrono::Utc>> {
[INFO] [stdout]     |                                                   ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `chrono::Date`: Use `NaiveDate` or `DateTime<Tz>` instead
[INFO] [stdout]    --> src/fix_values/date.rs:117:22
[INFO] [stdout]     |
[INFO] [stdout] 117 |         Some(chrono::Date::from_utc(naive, chrono::Utc))
[INFO] [stdout]     |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stdout]   --> src/fix_values/timestamp.rs:58:32
[INFO] [stdout]    |
[INFO] [stdout] 58 |         Some(chrono::DateTime::from_utc(naive, chrono::Utc))
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::FixedOffset::east`: use `east_opt()` instead
[INFO] [stdout]   --> src/fix_values/tz.rs:62:30
[INFO] [stdout]    |
[INFO] [stdout] 62 |         chrono::FixedOffset::east(self.offset().1.as_secs() as i32)
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tag`
[INFO] [stdout]   --> src/tagvalue/encoder.rs:94:13
[INFO] [stdout]    |
[INFO] [stdout] 94 |         let tag = TagU16::new(10 as u16).unwrap();
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_tag`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `next_inbound` and `next_outbound` are never read
[INFO] [stdout]   --> src/session/mod.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub struct State {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 91 |     next_inbound: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 92 |     next_outbound: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `State` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tag` is never read
[INFO] [stdout]    --> src/tagvalue/decoder.rs:437:5
[INFO] [stdout]     |
[INFO] [stdout] 436 | struct DecoderStateNewGroup {
[INFO] [stdout]     |        -------------------- field in this struct
[INFO] [stdout] 437 |     tag: TagU16,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DecoderStateNewGroup` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `i_first_cell`, `i_last_cell`, `len_end_header`, `len_end_body`, and `len_end_trailer` are never read
[INFO] [stdout]    --> src/tagvalue/decoder.rs:494:5
[INFO] [stdout]     |
[INFO] [stdout] 489 | struct MessageBuilder<'a> {
[INFO] [stdout]     |        -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 494 |     i_first_cell: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 495 |     i_last_cell: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 496 |     len_end_header: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 497 |     len_end_body: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 498 |     len_end_trailer: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MessageBuilder` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GroupRef` is never constructed
[INFO] [stdout]    --> src/tagvalue/decoder.rs:653:12
[INFO] [stdout]     |
[INFO] [stdout] 653 | pub struct GroupRef<'a, T>
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GroupRefIter` is never constructed
[INFO] [stdout]    --> src/tagvalue/decoder.rs:663:12
[INFO] [stdout]     |
[INFO] [stdout] 663 | pub struct GroupRefIter<'a, T>
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TokioRawDecoder` is never constructed
[INFO] [stdout]  --> src/tagvalue/tokio_decoder.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct TokioRawDecoder<C = Config> {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `dict` and `raw_decoder` are never read
[INFO] [stdout]   --> src/tagvalue/tokio_decoder.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct TokioDecoder<C = Config>
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 49 |     dict: Dictionary,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 50 |     raw_decoder: Decoder<C>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TokioDecoder` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:288:44
[INFO] [stdout]     |
[INFO] [stdout] 288 |     pub fn abbreviation_for<S: AsRef<str>>(&self, term: S) -> Option<Abbreviation> {
[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] 288 |     pub fn abbreviation_for<S: AsRef<str>>(&self, term: S) -> Option<Abbreviation<'_>> {
[INFO] [stdout]     |                                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:305:43
[INFO] [stdout]     |
[INFO] [stdout] 305 |     pub fn message_by_name<S: AsRef<str>>(&self, name: S) -> Option<Message> {
[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] 305 |     pub fn message_by_name<S: AsRef<str>>(&self, name: S) -> Option<Message<'_>> {
[INFO] [stdout]     |                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:322:46
[INFO] [stdout]     |
[INFO] [stdout] 322 |     pub fn message_by_msgtype<S: AsRef<str>>(&self, msgtype: S) -> Option<Message> {
[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] 322 |     pub fn message_by_msgtype<S: AsRef<str>>(&self, msgtype: S) -> Option<Message<'_>> {
[INFO] [stdout]     |                                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:329:45
[INFO] [stdout]     |
[INFO] [stdout] 329 |     pub fn component_by_name<S: AsRef<str>>(&self, name: S) -> Option<Component> {
[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] 329 |     pub fn component_by_name<S: AsRef<str>>(&self, name: S) -> Option<Component<'_>> {
[INFO] [stdout]     |                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:344:44
[INFO] [stdout]     |
[INFO] [stdout] 344 |     pub fn datatype_by_name<S: AsRef<str>>(&self, name: S) -> Option<Datatype> {
[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] 344 |     pub fn datatype_by_name<S: AsRef<str>>(&self, name: S) -> Option<Datatype<'_>> {
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:360:25
[INFO] [stdout]     |
[INFO] [stdout] 360 |     pub fn field_by_tag(&self, tag: u32) -> Option<Field> {
[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] 360 |     pub fn field_by_tag(&self, tag: u32) -> Option<Field<'_>> {
[INFO] [stdout]     |                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:367:41
[INFO] [stdout]     |
[INFO] [stdout] 367 |     pub fn field_by_name<S: AsRef<str>>(&self, name: S) -> Option<Field> {
[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] 367 |     pub fn field_by_name<S: AsRef<str>>(&self, name: S) -> Option<Field<'_>> {
[INFO] [stdout]     |                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:383:27
[INFO] [stdout]     |
[INFO] [stdout] 383 |     pub fn iter_datatypes(&self) -> impl Iterator<Item = Datatype> {
[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] 383 |     pub fn iter_datatypes(&self) -> impl Iterator<Item = Datatype<'_>> {
[INFO] [stdout]     |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:400:26
[INFO] [stdout]     |
[INFO] [stdout] 400 |     pub fn iter_messages(&self) -> impl Iterator<Item = Message> {
[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] 400 |     pub fn iter_messages(&self) -> impl Iterator<Item = Message<'_>> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:409:28
[INFO] [stdout]     |
[INFO] [stdout] 409 |     pub fn iter_categories(&self) -> impl Iterator<Item = Category> {
[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] 409 |     pub fn iter_categories(&self) -> impl Iterator<Item = Category<'_>> {
[INFO] [stdout]     |                                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:418:24
[INFO] [stdout]     |
[INFO] [stdout] 418 |     pub fn iter_fields(&self) -> impl Iterator<Item = Field> {
[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] 418 |     pub fn iter_fields(&self) -> impl Iterator<Item = Field<'_>> {
[INFO] [stdout]     |                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:424:28
[INFO] [stdout]     |
[INFO] [stdout] 424 |     pub fn iter_components(&self) -> impl Iterator<Item = Component> {
[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] 424 |     pub fn iter_components(&self) -> impl Iterator<Item = Component<'_>> {
[INFO] [stdout]     |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:590:21
[INFO] [stdout]     |
[INFO] [stdout] 590 |     pub fn category(&self) -> Category {
[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] 590 |     pub fn category(&self) -> Category<'_> {
[INFO] [stdout]     |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:601:18
[INFO] [stdout]     |
[INFO] [stdout] 601 |     pub fn items(&self) -> impl Iterator<Item = LayoutItem> {
[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] 601 |     pub fn items(&self) -> impl Iterator<Item = LayoutItem<'_>> {
[INFO] [stdout]     |                                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/fefix_core/dict.rs:625:5
[INFO] [stdout]     |
[INFO] [stdout] 625 |     Xml,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:86:9
[INFO] [stdout]     |
[INFO] [stdout]  86 | #![warn(missing_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/fefix_core/dict.rs:626:5
[INFO] [stdout]     |
[INFO] [stdout] 626 |     Block {
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/fefix_core/dict.rs:627:9
[INFO] [stdout]     |
[INFO] [stdout] 627 |         is_repeating: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/fefix_core/dict.rs:628:9
[INFO] [stdout]     |
[INFO] [stdout] 628 |         is_implicit: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/fefix_core/dict.rs:629:9
[INFO] [stdout]     |
[INFO] [stdout] 629 |         is_optimized: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/fefix_core/dict.rs:631:5
[INFO] [stdout]     |
[INFO] [stdout] 631 |     Message,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]     --> src/fefix_core/dict.rs:1119:5
[INFO] [stdout]      |
[INFO] [stdout] 1119 |     pub fn doc_url_onixs(&self, version: &str) -> String {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1158:18
[INFO] [stdout]      |
[INFO] [stdout] 1158 |     pub fn enums(&self) -> Option<impl Iterator<Item = FieldEnum>> {
[INFO] [stdout]      |                  ^^^^^ the lifetime is elided here     ^^^^^^^^^ 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] 1158 |     pub fn enums(&self) -> Option<impl Iterator<Item = FieldEnum<'_>>> {
[INFO] [stdout]      |                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1166:22
[INFO] [stdout]      |
[INFO] [stdout] 1166 |     pub fn data_type(&self) -> Datatype {
[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] 1166 |     pub fn data_type(&self) -> Datatype<'_> {
[INFO] [stdout]      |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]     --> src/fefix_core/dict.rs:1212:1
[INFO] [stdout]      |
[INFO] [stdout] 1212 | pub trait IsFieldDefinition {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1270:17
[INFO] [stdout]      |
[INFO] [stdout] 1270 |     pub fn kind(&self) -> LayoutItemKind {
[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] 1270 |     pub fn kind(&self) -> LayoutItemKind<'_> {
[INFO] [stdout]      |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]     --> src/fefix_core/dict.rs:1354:5
[INFO] [stdout]      |
[INFO] [stdout] 1354 |     pub fn group_info(&self, num_in_group_tag: TagU16) -> Option<TagU16> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]     --> src/fefix_core/dict.rs:1379:5
[INFO] [stdout]      |
[INFO] [stdout] 1379 |     pub fn layout(&self) -> impl Iterator<Item = LayoutItem> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1379:19
[INFO] [stdout]      |
[INFO] [stdout] 1379 |     pub fn layout(&self) -> impl Iterator<Item = LayoutItem> {
[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] 1379 |     pub fn layout(&self) -> impl Iterator<Item = LayoutItem<'_>> {
[INFO] [stdout]      |                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1427:19
[INFO] [stdout]      |
[INFO] [stdout] 1427 |         fn as_ref(&self) -> KeyRef {
[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] 1427 |         fn as_ref(&self) -> KeyRef<'_> {
[INFO] [stdout]      |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1442:19
[INFO] [stdout]      |
[INFO] [stdout] 1442 |         fn to_key(&self) -> KeyRef;
[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] 1442 |         fn to_key(&self) -> KeyRef<'_>;
[INFO] [stdout]      |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1446:19
[INFO] [stdout]      |
[INFO] [stdout] 1446 |         fn to_key(&self) -> KeyRef {
[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] 1446 |         fn to_key(&self) -> KeyRef<'_> {
[INFO] [stdout]      |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1452:19
[INFO] [stdout]      |
[INFO] [stdout] 1452 |         fn to_key(&self) -> KeyRef {
[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] 1452 |         fn to_key(&self) -> KeyRef<'_> {
[INFO] [stdout]      |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/session/mod.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub mod backends;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn sender_comp_id(&self) -> &[u8];
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn target_comp_id(&self) -> &[u8];
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn message_encoding(&self) -> Option<&[u8]> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn set_sender_and_target<'a>(&'a self, msg: &mut impl FvWrite<'a, u32>) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     fn environment(&self) -> Environment {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn on_heartbeat_is_due(&mut self) -> Result<(), Self::Error> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     fn fetch_messages(&mut self) -> Result<&[&[u8]], Self::Error>;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn pending_message(&mut self) -> Option<&[u8]>;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/session/mod.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub struct State {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/session/mod.rs:96:1
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub struct MsgSeqNumCounter(u64);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated constant
[INFO] [stdout]   --> src/session/mod.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub const START: Self = Self(0);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/session/mod.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn next(&mut self) -> u64 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/session/mod.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     pub fn expected(&self) -> u64 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]  --> src/session/backends.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub trait Application {}
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/config.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn begin_string(&self) -> &[u8] {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/config.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn sender_comp_id(&self) -> &[u8] {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/config.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn target_comp_id(&self) -> &[u8] {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/config.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn environment(&self) -> Environment {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/config.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn heartbeat(&self) -> Duration {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/event_loop.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub async fn next_event<'a>(&'a mut self) -> Option<LlEvent<'a>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/session/resend_request_range.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn new(start: usize, end: Option<usize>) -> Self {
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/session/seq_numbers.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub next_inbound: u64,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/session/seq_numbers.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub next_outbound: u64,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/seq_numbers.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn incr_inbound(&mut self) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/seq_numbers.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     pub fn incr_outbound(&mut self) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/seq_numbers.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub fn validate_inbound(&self, inbound: u64) -> Result<(), SeqNumberError> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/session/seq_numbers.rs:59:1
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub enum SeqNumberError {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/session/seq_numbers.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     Recover,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/session/seq_numbers.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     TooLow,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/session/seq_numbers.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     NoSeqNum,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]   --> src/tagvalue/mod.rs:84:1
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub trait FvWrite<'a, F> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/tagvalue/mod.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 | /     fn set_fv<'b, V>(&'b mut self, field: &F, value: V)
[INFO] [stdout] 86 | |     where
[INFO] [stdout] 87 | |         V: FixValue<'b>;
[INFO] [stdout]    | |________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/tagvalue/decoder.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     pub fn buffered(self) -> DecoderBuffered<C> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/tagvalue/decoder.rs:284:20
[INFO] [stdout]     |
[INFO] [stdout] 284 |     pub fn message(&self) -> Message<&[u8]> {
[INFO] [stdout]     |                    ^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                    |         |       |
[INFO] [stdout]     |                    |         |       the same lifetime is elided here
[INFO] [stdout]     |                    |         the same lifetime is hidden here
[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] 284 |     pub fn message(&self) -> Message<'_, &[u8]> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/tagvalue/decoder.rs:582:18
[INFO] [stdout]     |
[INFO] [stdout] 582 |     fn group_opt(&self, tag: &u32) -> Option<Result<Self::Group, <usize as FixValue>::Error>> {
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here               ^^^^^^^^^^^^^^^^^^^^^^^^^^ 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] 582 |     fn group_opt(&self, tag: &u32) -> Option<Result<Self::Group, <usize as FixValue<'_>>::Error>> {
[INFO] [stdout]     |                                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/tagvalue/encoder.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 | /     pub fn start_message<'a>(
[INFO] [stdout] 68 | |         &'a mut self,
[INFO] [stdout] 69 | |         begin_string: &[u8],
[INFO] [stdout] 70 | |         buffer: &'a mut Vec<u8>,
[INFO] [stdout] 71 | |         msg_type: &[u8],
[INFO] [stdout] 72 | |     ) -> EncoderHandle<'a, Vec<u8>, C> {
[INFO] [stdout]    | |______________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/tagvalue/encoder.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 | /     pub fn set_any<'b, T>(&mut self, tag: TagU16, value: T)
[INFO] [stdout] 158 | |     where
[INFO] [stdout] 159 | |         T: FixValue<'b>,
[INFO] [stdout]     | |________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/tagvalue/encoder.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     pub fn raw(&mut self, raw: &[u8]) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tagvalue/field_access.rs:22:14
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn group(&self, field: &F) -> Result<Self::Group, Option<<usize as FixValue>::Error>> {
[INFO] [stdout]    |              ^^^^^ the lifetime is elided here               ^^^^^^^^^^^^^^^^^^^^^^^^^^ 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] 22 |     fn group(&self, field: &F) -> Result<Self::Group, Option<<usize as FixValue<'_>>::Error>> {
[INFO] [stdout]    |                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tagvalue/field_access.rs:34:18
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn group_opt(&self, field: &F) -> Option<Result<Self::Group, <usize as FixValue>::Error>>;
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here               ^^^^^^^^^^^^^^^^^^^^^^^^^^ 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] 34 |     fn group_opt(&self, field: &F) -> Option<Result<Self::Group, <usize as FixValue<'_>>::Error>>;
[INFO] [stdout]    |                                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/tagvalue/field_access.rs:113:16
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn entries(&self) -> Entries<Self> {
[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] 113 |     fn entries(&self) -> Entries<'_, Self> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub tag: TagU16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub context: FieldLocatorContext,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum FieldLocatorContext {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     TopLevel,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     WithinGroup {
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         index_of_group_tag: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |         entry_index: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/tagvalue/raw_decoder.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub data: T,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/tagvalue/raw_decoder.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub begin_string: Range<usize>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/tagvalue/raw_decoder.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub payload: Range<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/tagvalue/raw_decoder.rs:208:5
[INFO] [stdout]     |
[INFO] [stdout] 208 |     pub fn parse(&mut self) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/tagvalue/raw_decoder.rs:230:5
[INFO] [stdout]     |
[INFO] [stdout] 230 |     pub fn raw_frame<'a>(&'a self) -> Result<Option<RawFrame<&'a [u8]>>, DecodeError> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/tagvalue/tokio_decoder.rs:45:1
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct TokioDecoder<C = Config>
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 06s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: quick-xml v0.22.0, sqlx-core v0.5.13
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] running `Command { std: "docker" "inspect" "51ea87e603000402792f95b6e37f0e6dd241aaa8f891b3e7360b1a5222f6369d", 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" "51ea87e603000402792f95b6e37f0e6dd241aaa8f891b3e7360b1a5222f6369d" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling log v0.4.32
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling rand_core v0.10.1
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling rustls v0.19.1
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling csv-core v0.1.13
[INFO] [stderr]    Compiling criterion-plot v0.4.5
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stderr]    Compiling rand v0.10.1
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling csv v1.4.0
[INFO] [stderr]    Compiling regex v1.12.4
[INFO] [stderr]    Compiling env_filter v1.0.1
[INFO] [stderr]    Compiling env_logger v0.11.10
[INFO] [stderr]    Compiling darling_core v0.12.4
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling quickcheck v1.1.0
[INFO] [stderr]    Compiling tokio-rustls v0.22.0
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling strum_macros v0.22.0
[INFO] [stderr]    Compiling enum-as-inner v0.3.4
[INFO] [stderr]    Compiling sqlx-rt v0.5.13
[INFO] [stderr]    Compiling quickcheck_derive v0.3.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_macro v0.12.4
[INFO] [stderr]    Compiling fefix v0.7.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling darling v0.12.4
[INFO] [stderr]    Compiling fefix_derive v0.7.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling derive_arbitrary v1.4.2
[INFO] [stderr]    Compiling quickcheck_macros v1.2.0
[INFO] [stderr]    Compiling openssl v0.10.81
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling arbitrary v1.4.2
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling serde_cbor v0.11.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling criterion v0.3.6
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling sqlx-core v0.5.13
[INFO] [stderr]    Compiling tokio-util v0.6.10
[INFO] [stderr]    Compiling sqlx-macros v0.5.13
[INFO] [stderr]    Compiling sqlx v0.5.13
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]    --> src/lib.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 | #![cfg_attr(doc_cfg, feature(doc_cfg))]
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `docsrs`, `feature`, and `test` and 32 more
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> 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 name: `doc_cfg`
[INFO] [stdout]   --> src/buffer.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-bytes")))]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]    --> src/fix_values/date.rs:114:16
[INFO] [stdout]     |
[INFO] [stdout] 114 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]     |                ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]    --> src/fix_values/date.rs:125:16
[INFO] [stdout]     |
[INFO] [stdout] 125 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]     |                ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]    --> src/fix_values/time.rs:144:16
[INFO] [stdout]     |
[INFO] [stdout] 144 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]     |                ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/timestamp.rs:55:16
[INFO] [stdout]    |
[INFO] [stdout] 55 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/timestamp.rs:65:16
[INFO] [stdout]    |
[INFO] [stdout] 65 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/tz.rs:60:16
[INFO] [stdout]    |
[INFO] [stdout] 60 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/tz.rs:67:16
[INFO] [stdout]    |
[INFO] [stdout] 67 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]  --> src/fix_values/utils_chrono.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider using a Cargo feature instead
[INFO] [stdout]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]            [lints.rust]
[INFO] [stdout]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/utils_chrono.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/utils_chrono.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 62 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::Environment`
[INFO] [stdout]  --> src/session/backends.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::Environment;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tagvalue::FvWrite`
[INFO] [stdout]  --> src/session/backends.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::tagvalue::FvWrite;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::future::Fuse`
[INFO] [stdout]  --> src/session/event_loop.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::future::Fuse;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::future::Ready`
[INFO] [stdout]  --> src/session/event_loop.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use futures::future::Ready;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::dict::IsFieldDefinition`
[INFO] [stdout]   --> src/tagvalue/mod.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | use crate::dict::IsFieldDefinition;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/tagvalue/tokio_decoder.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-tokio")))]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `chrono::Date`: Use `NaiveDate` or `DateTime<Tz>` instead
[INFO] [stdout]    --> src/fix_values/date.rs:115:51
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn to_chrono_utc(&self) -> Option<chrono::Date<chrono::Utc>> {
[INFO] [stdout]     |                                                   ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `chrono::Date`: Use `NaiveDate` or `DateTime<Tz>` instead
[INFO] [stdout]    --> src/fix_values/date.rs:117:22
[INFO] [stdout]     |
[INFO] [stdout] 117 |         Some(chrono::Date::from_utc(naive, chrono::Utc))
[INFO] [stdout]     |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]    --> src/lib.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 | #![cfg_attr(doc_cfg, feature(doc_cfg))]
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `docsrs`, `feature`, and `test` and 32 more
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> 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 name: `doc_cfg`
[INFO] [stdout]   --> src/buffer.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-bytes")))]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]    --> src/fix_values/date.rs:114:16
[INFO] [stdout]     |
[INFO] [stdout] 114 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]     |                ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]    --> src/fix_values/date.rs:125:16
[INFO] [stdout]     |
[INFO] [stdout] 125 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]     |                ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]    --> src/fix_values/time.rs:144:16
[INFO] [stdout]     |
[INFO] [stdout] 144 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]     |                ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/timestamp.rs:55:16
[INFO] [stdout]    |
[INFO] [stdout] 55 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/timestamp.rs:65:16
[INFO] [stdout]    |
[INFO] [stdout] 65 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/tz.rs:60:16
[INFO] [stdout]    |
[INFO] [stdout] 60 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/tz.rs:67:16
[INFO] [stdout]    |
[INFO] [stdout] 67 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]  --> src/fix_values/utils_chrono.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider using a Cargo feature instead
[INFO] [stdout]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]            [lints.rust]
[INFO] [stdout]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/utils_chrono.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/fix_values/utils_chrono.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 62 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::Environment`
[INFO] [stdout]  --> src/session/backends.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::Environment;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tagvalue::FvWrite`
[INFO] [stdout]  --> src/session/backends.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::tagvalue::FvWrite;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::future::Fuse`
[INFO] [stdout]  --> src/session/event_loop.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::future::Fuse;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::future::Ready`
[INFO] [stdout]  --> src/session/event_loop.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use futures::future::Ready;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::dict::IsFieldDefinition`
[INFO] [stdout]   --> src/tagvalue/mod.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | use crate::dict::IsFieldDefinition;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stdout]   --> src/tagvalue/tokio_decoder.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-tokio")))]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `chrono::Date`: Use `NaiveDate` or `DateTime<Tz>` instead
[INFO] [stdout]    --> src/fix_values/date.rs:115:51
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn to_chrono_utc(&self) -> Option<chrono::Date<chrono::Utc>> {
[INFO] [stdout]     |                                                   ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `chrono::Date`: Use `NaiveDate` or `DateTime<Tz>` instead
[INFO] [stdout]    --> src/fix_values/date.rs:117:22
[INFO] [stdout]     |
[INFO] [stdout] 117 |         Some(chrono::Date::from_utc(naive, chrono::Utc))
[INFO] [stdout]     |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stdout]   --> src/fix_values/timestamp.rs:58:32
[INFO] [stdout]    |
[INFO] [stdout] 58 |         Some(chrono::DateTime::from_utc(naive, chrono::Utc))
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::FixedOffset::east`: use `east_opt()` instead
[INFO] [stdout]   --> src/fix_values/tz.rs:62:30
[INFO] [stdout]    |
[INFO] [stdout] 62 |         chrono::FixedOffset::east(self.offset().1.as_secs() as i32)
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stdout]   --> src/fix_values/timestamp.rs:58:32
[INFO] [stdout]    |
[INFO] [stdout] 58 |         Some(chrono::DateTime::from_utc(naive, chrono::Utc))
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::FixedOffset::east`: use `east_opt()` instead
[INFO] [stdout]   --> src/fix_values/tz.rs:62:30
[INFO] [stdout]    |
[INFO] [stdout] 62 |         chrono::FixedOffset::east(self.offset().1.as_secs() as i32)
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tag`
[INFO] [stdout]   --> src/tagvalue/encoder.rs:94:13
[INFO] [stdout]    |
[INFO] [stdout] 94 |         let tag = TagU16::new(10 as u16).unwrap();
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_tag`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `next_inbound` and `next_outbound` are never read
[INFO] [stdout]   --> src/session/mod.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub struct State {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 91 |     next_inbound: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 92 |     next_outbound: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `State` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tag` is never read
[INFO] [stdout]    --> src/tagvalue/decoder.rs:437:5
[INFO] [stdout]     |
[INFO] [stdout] 436 | struct DecoderStateNewGroup {
[INFO] [stdout]     |        -------------------- field in this struct
[INFO] [stdout] 437 |     tag: TagU16,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DecoderStateNewGroup` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `i_first_cell`, `i_last_cell`, `len_end_header`, `len_end_body`, and `len_end_trailer` are never read
[INFO] [stdout]    --> src/tagvalue/decoder.rs:494:5
[INFO] [stdout]     |
[INFO] [stdout] 489 | struct MessageBuilder<'a> {
[INFO] [stdout]     |        -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 494 |     i_first_cell: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 495 |     i_last_cell: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 496 |     len_end_header: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 497 |     len_end_body: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 498 |     len_end_trailer: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MessageBuilder` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GroupRef` is never constructed
[INFO] [stdout]    --> src/tagvalue/decoder.rs:653:12
[INFO] [stdout]     |
[INFO] [stdout] 653 | pub struct GroupRef<'a, T>
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GroupRefIter` is never constructed
[INFO] [stdout]    --> src/tagvalue/decoder.rs:663:12
[INFO] [stdout]     |
[INFO] [stdout] 663 | pub struct GroupRefIter<'a, T>
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TokioRawDecoder` is never constructed
[INFO] [stdout]  --> src/tagvalue/tokio_decoder.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct TokioRawDecoder<C = Config> {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `dict` and `raw_decoder` are never read
[INFO] [stdout]   --> src/tagvalue/tokio_decoder.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct TokioDecoder<C = Config>
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 49 |     dict: Dictionary,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 50 |     raw_decoder: Decoder<C>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TokioDecoder` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:288:44
[INFO] [stdout]     |
[INFO] [stdout] 288 |     pub fn abbreviation_for<S: AsRef<str>>(&self, term: S) -> Option<Abbreviation> {
[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] 288 |     pub fn abbreviation_for<S: AsRef<str>>(&self, term: S) -> Option<Abbreviation<'_>> {
[INFO] [stdout]     |                                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:305:43
[INFO] [stdout]     |
[INFO] [stdout] 305 |     pub fn message_by_name<S: AsRef<str>>(&self, name: S) -> Option<Message> {
[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] 305 |     pub fn message_by_name<S: AsRef<str>>(&self, name: S) -> Option<Message<'_>> {
[INFO] [stdout]     |                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:322:46
[INFO] [stdout]     |
[INFO] [stdout] 322 |     pub fn message_by_msgtype<S: AsRef<str>>(&self, msgtype: S) -> Option<Message> {
[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] 322 |     pub fn message_by_msgtype<S: AsRef<str>>(&self, msgtype: S) -> Option<Message<'_>> {
[INFO] [stdout]     |                                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:329:45
[INFO] [stdout]     |
[INFO] [stdout] 329 |     pub fn component_by_name<S: AsRef<str>>(&self, name: S) -> Option<Component> {
[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] 329 |     pub fn component_by_name<S: AsRef<str>>(&self, name: S) -> Option<Component<'_>> {
[INFO] [stdout]     |                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:344:44
[INFO] [stdout]     |
[INFO] [stdout] 344 |     pub fn datatype_by_name<S: AsRef<str>>(&self, name: S) -> Option<Datatype> {
[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] 344 |     pub fn datatype_by_name<S: AsRef<str>>(&self, name: S) -> Option<Datatype<'_>> {
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:360:25
[INFO] [stdout]     |
[INFO] [stdout] 360 |     pub fn field_by_tag(&self, tag: u32) -> Option<Field> {
[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] 360 |     pub fn field_by_tag(&self, tag: u32) -> Option<Field<'_>> {
[INFO] [stdout]     |                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:367:41
[INFO] [stdout]     |
[INFO] [stdout] 367 |     pub fn field_by_name<S: AsRef<str>>(&self, name: S) -> Option<Field> {
[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] 367 |     pub fn field_by_name<S: AsRef<str>>(&self, name: S) -> Option<Field<'_>> {
[INFO] [stdout]     |                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:383:27
[INFO] [stdout]     |
[INFO] [stdout] 383 |     pub fn iter_datatypes(&self) -> impl Iterator<Item = Datatype> {
[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] 383 |     pub fn iter_datatypes(&self) -> impl Iterator<Item = Datatype<'_>> {
[INFO] [stdout]     |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:400:26
[INFO] [stdout]     |
[INFO] [stdout] 400 |     pub fn iter_messages(&self) -> impl Iterator<Item = Message> {
[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] 400 |     pub fn iter_messages(&self) -> impl Iterator<Item = Message<'_>> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:409:28
[INFO] [stdout]     |
[INFO] [stdout] 409 |     pub fn iter_categories(&self) -> impl Iterator<Item = Category> {
[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] 409 |     pub fn iter_categories(&self) -> impl Iterator<Item = Category<'_>> {
[INFO] [stdout]     |                                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:418:24
[INFO] [stdout]     |
[INFO] [stdout] 418 |     pub fn iter_fields(&self) -> impl Iterator<Item = Field> {
[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] 418 |     pub fn iter_fields(&self) -> impl Iterator<Item = Field<'_>> {
[INFO] [stdout]     |                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:424:28
[INFO] [stdout]     |
[INFO] [stdout] 424 |     pub fn iter_components(&self) -> impl Iterator<Item = Component> {
[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] 424 |     pub fn iter_components(&self) -> impl Iterator<Item = Component<'_>> {
[INFO] [stdout]     |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:590:21
[INFO] [stdout]     |
[INFO] [stdout] 590 |     pub fn category(&self) -> Category {
[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] 590 |     pub fn category(&self) -> Category<'_> {
[INFO] [stdout]     |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:601:18
[INFO] [stdout]     |
[INFO] [stdout] 601 |     pub fn items(&self) -> impl Iterator<Item = LayoutItem> {
[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] 601 |     pub fn items(&self) -> impl Iterator<Item = LayoutItem<'_>> {
[INFO] [stdout]     |                                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/fefix_core/dict.rs:625:5
[INFO] [stdout]     |
[INFO] [stdout] 625 |     Xml,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:86:9
[INFO] [stdout]     |
[INFO] [stdout]  86 | #![warn(missing_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/fefix_core/dict.rs:626:5
[INFO] [stdout]     |
[INFO] [stdout] 626 |     Block {
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/fefix_core/dict.rs:627:9
[INFO] [stdout]     |
[INFO] [stdout] 627 |         is_repeating: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/fefix_core/dict.rs:628:9
[INFO] [stdout]     |
[INFO] [stdout] 628 |         is_implicit: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/fefix_core/dict.rs:629:9
[INFO] [stdout]     |
[INFO] [stdout] 629 |         is_optimized: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/fefix_core/dict.rs:631:5
[INFO] [stdout]     |
[INFO] [stdout] 631 |     Message,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]     --> src/fefix_core/dict.rs:1119:5
[INFO] [stdout]      |
[INFO] [stdout] 1119 |     pub fn doc_url_onixs(&self, version: &str) -> String {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1158:18
[INFO] [stdout]      |
[INFO] [stdout] 1158 |     pub fn enums(&self) -> Option<impl Iterator<Item = FieldEnum>> {
[INFO] [stdout]      |                  ^^^^^ the lifetime is elided here     ^^^^^^^^^ 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] 1158 |     pub fn enums(&self) -> Option<impl Iterator<Item = FieldEnum<'_>>> {
[INFO] [stdout]      |                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1166:22
[INFO] [stdout]      |
[INFO] [stdout] 1166 |     pub fn data_type(&self) -> Datatype {
[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] 1166 |     pub fn data_type(&self) -> Datatype<'_> {
[INFO] [stdout]      |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]     --> src/fefix_core/dict.rs:1212:1
[INFO] [stdout]      |
[INFO] [stdout] 1212 | pub trait IsFieldDefinition {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1270:17
[INFO] [stdout]      |
[INFO] [stdout] 1270 |     pub fn kind(&self) -> LayoutItemKind {
[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] 1270 |     pub fn kind(&self) -> LayoutItemKind<'_> {
[INFO] [stdout]      |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]     --> src/fefix_core/dict.rs:1354:5
[INFO] [stdout]      |
[INFO] [stdout] 1354 |     pub fn group_info(&self, num_in_group_tag: TagU16) -> Option<TagU16> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]     --> src/fefix_core/dict.rs:1379:5
[INFO] [stdout]      |
[INFO] [stdout] 1379 |     pub fn layout(&self) -> impl Iterator<Item = LayoutItem> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1379:19
[INFO] [stdout]      |
[INFO] [stdout] 1379 |     pub fn layout(&self) -> impl Iterator<Item = LayoutItem> {
[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] 1379 |     pub fn layout(&self) -> impl Iterator<Item = LayoutItem<'_>> {
[INFO] [stdout]      |                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1427:19
[INFO] [stdout]      |
[INFO] [stdout] 1427 |         fn as_ref(&self) -> KeyRef {
[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] 1427 |         fn as_ref(&self) -> KeyRef<'_> {
[INFO] [stdout]      |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1442:19
[INFO] [stdout]      |
[INFO] [stdout] 1442 |         fn to_key(&self) -> KeyRef;
[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] 1442 |         fn to_key(&self) -> KeyRef<'_>;
[INFO] [stdout]      |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1446:19
[INFO] [stdout]      |
[INFO] [stdout] 1446 |         fn to_key(&self) -> KeyRef {
[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] 1446 |         fn to_key(&self) -> KeyRef<'_> {
[INFO] [stdout]      |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1452:19
[INFO] [stdout]      |
[INFO] [stdout] 1452 |         fn to_key(&self) -> KeyRef {
[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] 1452 |         fn to_key(&self) -> KeyRef<'_> {
[INFO] [stdout]      |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/session/mod.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub mod backends;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn sender_comp_id(&self) -> &[u8];
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn target_comp_id(&self) -> &[u8];
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn message_encoding(&self) -> Option<&[u8]> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn set_sender_and_target<'a>(&'a self, msg: &mut impl FvWrite<'a, u32>) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     fn environment(&self) -> Environment {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn on_heartbeat_is_due(&mut self) -> Result<(), Self::Error> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     fn fetch_messages(&mut self) -> Result<&[&[u8]], Self::Error>;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn pending_message(&mut self) -> Option<&[u8]>;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/session/mod.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub struct State {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/session/mod.rs:96:1
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub struct MsgSeqNumCounter(u64);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated constant
[INFO] [stdout]   --> src/session/mod.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub const START: Self = Self(0);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/session/mod.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn next(&mut self) -> u64 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/session/mod.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     pub fn expected(&self) -> u64 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]  --> src/session/backends.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub trait Application {}
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/config.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn begin_string(&self) -> &[u8] {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/config.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn sender_comp_id(&self) -> &[u8] {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/config.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn target_comp_id(&self) -> &[u8] {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/config.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn environment(&self) -> Environment {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/config.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn heartbeat(&self) -> Duration {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/event_loop.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub async fn next_event<'a>(&'a mut self) -> Option<LlEvent<'a>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/session/resend_request_range.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn new(start: usize, end: Option<usize>) -> Self {
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/session/seq_numbers.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub next_inbound: u64,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/session/seq_numbers.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub next_outbound: u64,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/seq_numbers.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn incr_inbound(&mut self) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/seq_numbers.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     pub fn incr_outbound(&mut self) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/seq_numbers.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub fn validate_inbound(&self, inbound: u64) -> Result<(), SeqNumberError> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/session/seq_numbers.rs:59:1
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub enum SeqNumberError {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/session/seq_numbers.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     Recover,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/session/seq_numbers.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     TooLow,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/session/seq_numbers.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     NoSeqNum,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]   --> src/tagvalue/mod.rs:84:1
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub trait FvWrite<'a, F> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/tagvalue/mod.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 | /     fn set_fv<'b, V>(&'b mut self, field: &F, value: V)
[INFO] [stdout] 86 | |     where
[INFO] [stdout] 87 | |         V: FixValue<'b>;
[INFO] [stdout]    | |________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/tagvalue/decoder.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     pub fn buffered(self) -> DecoderBuffered<C> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/tagvalue/decoder.rs:284:20
[INFO] [stdout]     |
[INFO] [stdout] 284 |     pub fn message(&self) -> Message<&[u8]> {
[INFO] [stdout]     |                    ^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                    |         |       |
[INFO] [stdout]     |                    |         |       the same lifetime is elided here
[INFO] [stdout]     |                    |         the same lifetime is hidden here
[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] 284 |     pub fn message(&self) -> Message<'_, &[u8]> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/tagvalue/decoder.rs:582:18
[INFO] [stdout]     |
[INFO] [stdout] 582 |     fn group_opt(&self, tag: &u32) -> Option<Result<Self::Group, <usize as FixValue>::Error>> {
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here               ^^^^^^^^^^^^^^^^^^^^^^^^^^ 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] 582 |     fn group_opt(&self, tag: &u32) -> Option<Result<Self::Group, <usize as FixValue<'_>>::Error>> {
[INFO] [stdout]     |                                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/tagvalue/encoder.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 | /     pub fn start_message<'a>(
[INFO] [stdout] 68 | |         &'a mut self,
[INFO] [stdout] 69 | |         begin_string: &[u8],
[INFO] [stdout] 70 | |         buffer: &'a mut Vec<u8>,
[INFO] [stdout] 71 | |         msg_type: &[u8],
[INFO] [stdout] 72 | |     ) -> EncoderHandle<'a, Vec<u8>, C> {
[INFO] [stdout]    | |______________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/tagvalue/encoder.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 | /     pub fn set_any<'b, T>(&mut self, tag: TagU16, value: T)
[INFO] [stdout] 158 | |     where
[INFO] [stdout] 159 | |         T: FixValue<'b>,
[INFO] [stdout]     | |________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/tagvalue/encoder.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     pub fn raw(&mut self, raw: &[u8]) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tagvalue/field_access.rs:22:14
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn group(&self, field: &F) -> Result<Self::Group, Option<<usize as FixValue>::Error>> {
[INFO] [stdout]    |              ^^^^^ the lifetime is elided here               ^^^^^^^^^^^^^^^^^^^^^^^^^^ 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] 22 |     fn group(&self, field: &F) -> Result<Self::Group, Option<<usize as FixValue<'_>>::Error>> {
[INFO] [stdout]    |                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tagvalue/field_access.rs:34:18
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn group_opt(&self, field: &F) -> Option<Result<Self::Group, <usize as FixValue>::Error>>;
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here               ^^^^^^^^^^^^^^^^^^^^^^^^^^ 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] 34 |     fn group_opt(&self, field: &F) -> Option<Result<Self::Group, <usize as FixValue<'_>>::Error>>;
[INFO] [stdout]    |                                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/tagvalue/field_access.rs:113:16
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn entries(&self) -> Entries<Self> {
[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] 113 |     fn entries(&self) -> Entries<'_, Self> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub tag: TagU16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub context: FieldLocatorContext,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum FieldLocatorContext {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     TopLevel,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     WithinGroup {
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         index_of_group_tag: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |         entry_index: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/tagvalue/raw_decoder.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub data: T,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/tagvalue/raw_decoder.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub begin_string: Range<usize>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/tagvalue/raw_decoder.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub payload: Range<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/tagvalue/raw_decoder.rs:208:5
[INFO] [stdout]     |
[INFO] [stdout] 208 |     pub fn parse(&mut self) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/tagvalue/raw_decoder.rs:230:5
[INFO] [stdout]     |
[INFO] [stdout] 230 |     pub fn raw_frame<'a>(&'a self) -> Result<Option<RawFrame<&'a [u8]>>, DecodeError> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/tagvalue/tokio_decoder.rs:45:1
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct TokioDecoder<C = Config>
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tag`
[INFO] [stdout]   --> src/tagvalue/encoder.rs:94:13
[INFO] [stdout]    |
[INFO] [stdout] 94 |         let tag = TagU16::new(10 as u16).unwrap();
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_tag`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `next_inbound` and `next_outbound` are never read
[INFO] [stdout]   --> src/session/mod.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub struct State {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 91 |     next_inbound: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 92 |     next_outbound: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `State` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tag` is never read
[INFO] [stdout]    --> src/tagvalue/decoder.rs:437:5
[INFO] [stdout]     |
[INFO] [stdout] 436 | struct DecoderStateNewGroup {
[INFO] [stdout]     |        -------------------- field in this struct
[INFO] [stdout] 437 |     tag: TagU16,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DecoderStateNewGroup` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `i_first_cell`, `i_last_cell`, `len_end_header`, `len_end_body`, and `len_end_trailer` are never read
[INFO] [stdout]    --> src/tagvalue/decoder.rs:494:5
[INFO] [stdout]     |
[INFO] [stdout] 489 | struct MessageBuilder<'a> {
[INFO] [stdout]     |        -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 494 |     i_first_cell: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 495 |     i_last_cell: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 496 |     len_end_header: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 497 |     len_end_body: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 498 |     len_end_trailer: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MessageBuilder` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GroupRef` is never constructed
[INFO] [stdout]    --> src/tagvalue/decoder.rs:653:12
[INFO] [stdout]     |
[INFO] [stdout] 653 | pub struct GroupRef<'a, T>
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GroupRefIter` is never constructed
[INFO] [stdout]    --> src/tagvalue/decoder.rs:663:12
[INFO] [stdout]     |
[INFO] [stdout] 663 | pub struct GroupRefIter<'a, T>
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TokioRawDecoder` is never constructed
[INFO] [stdout]  --> src/tagvalue/tokio_decoder.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct TokioRawDecoder<C = Config> {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `dict` and `raw_decoder` are never read
[INFO] [stdout]   --> src/tagvalue/tokio_decoder.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct TokioDecoder<C = Config>
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 49 |     dict: Dictionary,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 50 |     raw_decoder: Decoder<C>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TokioDecoder` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/fefix_core/dict.rs:260:5
[INFO] [stdout]     |
[INFO] [stdout] 260 |     pub fn all() -> Vec<Dictionary> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:86:9
[INFO] [stdout]     |
[INFO] [stdout]  86 | #![warn(missing_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:288:44
[INFO] [stdout]     |
[INFO] [stdout] 288 |     pub fn abbreviation_for<S: AsRef<str>>(&self, term: S) -> Option<Abbreviation> {
[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] 288 |     pub fn abbreviation_for<S: AsRef<str>>(&self, term: S) -> Option<Abbreviation<'_>> {
[INFO] [stdout]     |                                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:305:43
[INFO] [stdout]     |
[INFO] [stdout] 305 |     pub fn message_by_name<S: AsRef<str>>(&self, name: S) -> Option<Message> {
[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] 305 |     pub fn message_by_name<S: AsRef<str>>(&self, name: S) -> Option<Message<'_>> {
[INFO] [stdout]     |                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:322:46
[INFO] [stdout]     |
[INFO] [stdout] 322 |     pub fn message_by_msgtype<S: AsRef<str>>(&self, msgtype: S) -> Option<Message> {
[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] 322 |     pub fn message_by_msgtype<S: AsRef<str>>(&self, msgtype: S) -> Option<Message<'_>> {
[INFO] [stdout]     |                                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:329:45
[INFO] [stdout]     |
[INFO] [stdout] 329 |     pub fn component_by_name<S: AsRef<str>>(&self, name: S) -> Option<Component> {
[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] 329 |     pub fn component_by_name<S: AsRef<str>>(&self, name: S) -> Option<Component<'_>> {
[INFO] [stdout]     |                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:344:44
[INFO] [stdout]     |
[INFO] [stdout] 344 |     pub fn datatype_by_name<S: AsRef<str>>(&self, name: S) -> Option<Datatype> {
[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] 344 |     pub fn datatype_by_name<S: AsRef<str>>(&self, name: S) -> Option<Datatype<'_>> {
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:360:25
[INFO] [stdout]     |
[INFO] [stdout] 360 |     pub fn field_by_tag(&self, tag: u32) -> Option<Field> {
[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] 360 |     pub fn field_by_tag(&self, tag: u32) -> Option<Field<'_>> {
[INFO] [stdout]     |                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:367:41
[INFO] [stdout]     |
[INFO] [stdout] 367 |     pub fn field_by_name<S: AsRef<str>>(&self, name: S) -> Option<Field> {
[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] 367 |     pub fn field_by_name<S: AsRef<str>>(&self, name: S) -> Option<Field<'_>> {
[INFO] [stdout]     |                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:383:27
[INFO] [stdout]     |
[INFO] [stdout] 383 |     pub fn iter_datatypes(&self) -> impl Iterator<Item = Datatype> {
[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] 383 |     pub fn iter_datatypes(&self) -> impl Iterator<Item = Datatype<'_>> {
[INFO] [stdout]     |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:400:26
[INFO] [stdout]     |
[INFO] [stdout] 400 |     pub fn iter_messages(&self) -> impl Iterator<Item = Message> {
[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] 400 |     pub fn iter_messages(&self) -> impl Iterator<Item = Message<'_>> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:409:28
[INFO] [stdout]     |
[INFO] [stdout] 409 |     pub fn iter_categories(&self) -> impl Iterator<Item = Category> {
[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] 409 |     pub fn iter_categories(&self) -> impl Iterator<Item = Category<'_>> {
[INFO] [stdout]     |                                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:418:24
[INFO] [stdout]     |
[INFO] [stdout] 418 |     pub fn iter_fields(&self) -> impl Iterator<Item = Field> {
[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] 418 |     pub fn iter_fields(&self) -> impl Iterator<Item = Field<'_>> {
[INFO] [stdout]     |                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:424:28
[INFO] [stdout]     |
[INFO] [stdout] 424 |     pub fn iter_components(&self) -> impl Iterator<Item = Component> {
[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] 424 |     pub fn iter_components(&self) -> impl Iterator<Item = Component<'_>> {
[INFO] [stdout]     |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:590:21
[INFO] [stdout]     |
[INFO] [stdout] 590 |     pub fn category(&self) -> Category {
[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] 590 |     pub fn category(&self) -> Category<'_> {
[INFO] [stdout]     |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/fefix_core/dict.rs:601:18
[INFO] [stdout]     |
[INFO] [stdout] 601 |     pub fn items(&self) -> impl Iterator<Item = LayoutItem> {
[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] 601 |     pub fn items(&self) -> impl Iterator<Item = LayoutItem<'_>> {
[INFO] [stdout]     |                                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/fefix_core/dict.rs:625:5
[INFO] [stdout]     |
[INFO] [stdout] 625 |     Xml,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/fefix_core/dict.rs:626:5
[INFO] [stdout]     |
[INFO] [stdout] 626 |     Block {
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/fefix_core/dict.rs:627:9
[INFO] [stdout]     |
[INFO] [stdout] 627 |         is_repeating: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/fefix_core/dict.rs:628:9
[INFO] [stdout]     |
[INFO] [stdout] 628 |         is_implicit: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/fefix_core/dict.rs:629:9
[INFO] [stdout]     |
[INFO] [stdout] 629 |         is_optimized: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/fefix_core/dict.rs:631:5
[INFO] [stdout]     |
[INFO] [stdout] 631 |     Message,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]     --> src/fefix_core/dict.rs:1119:5
[INFO] [stdout]      |
[INFO] [stdout] 1119 |     pub fn doc_url_onixs(&self, version: &str) -> String {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1158:18
[INFO] [stdout]      |
[INFO] [stdout] 1158 |     pub fn enums(&self) -> Option<impl Iterator<Item = FieldEnum>> {
[INFO] [stdout]      |                  ^^^^^ the lifetime is elided here     ^^^^^^^^^ 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] 1158 |     pub fn enums(&self) -> Option<impl Iterator<Item = FieldEnum<'_>>> {
[INFO] [stdout]      |                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1166:22
[INFO] [stdout]      |
[INFO] [stdout] 1166 |     pub fn data_type(&self) -> Datatype {
[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] 1166 |     pub fn data_type(&self) -> Datatype<'_> {
[INFO] [stdout]      |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]     --> src/fefix_core/dict.rs:1212:1
[INFO] [stdout]      |
[INFO] [stdout] 1212 | pub trait IsFieldDefinition {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1270:17
[INFO] [stdout]      |
[INFO] [stdout] 1270 |     pub fn kind(&self) -> LayoutItemKind {
[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] 1270 |     pub fn kind(&self) -> LayoutItemKind<'_> {
[INFO] [stdout]      |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]     --> src/fefix_core/dict.rs:1354:5
[INFO] [stdout]      |
[INFO] [stdout] 1354 |     pub fn group_info(&self, num_in_group_tag: TagU16) -> Option<TagU16> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]     --> src/fefix_core/dict.rs:1379:5
[INFO] [stdout]      |
[INFO] [stdout] 1379 |     pub fn layout(&self) -> impl Iterator<Item = LayoutItem> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1379:19
[INFO] [stdout]      |
[INFO] [stdout] 1379 |     pub fn layout(&self) -> impl Iterator<Item = LayoutItem> {
[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] 1379 |     pub fn layout(&self) -> impl Iterator<Item = LayoutItem<'_>> {
[INFO] [stdout]      |                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1427:19
[INFO] [stdout]      |
[INFO] [stdout] 1427 |         fn as_ref(&self) -> KeyRef {
[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] 1427 |         fn as_ref(&self) -> KeyRef<'_> {
[INFO] [stdout]      |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1442:19
[INFO] [stdout]      |
[INFO] [stdout] 1442 |         fn to_key(&self) -> KeyRef;
[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] 1442 |         fn to_key(&self) -> KeyRef<'_>;
[INFO] [stdout]      |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1446:19
[INFO] [stdout]      |
[INFO] [stdout] 1446 |         fn to_key(&self) -> KeyRef {
[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] 1446 |         fn to_key(&self) -> KeyRef<'_> {
[INFO] [stdout]      |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/fefix_core/dict.rs:1452:19
[INFO] [stdout]      |
[INFO] [stdout] 1452 |         fn to_key(&self) -> KeyRef {
[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] 1452 |         fn to_key(&self) -> KeyRef<'_> {
[INFO] [stdout]      |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/session/mod.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub mod backends;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn sender_comp_id(&self) -> &[u8];
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn target_comp_id(&self) -> &[u8];
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn message_encoding(&self) -> Option<&[u8]> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn set_sender_and_target<'a>(&'a self, msg: &mut impl FvWrite<'a, u32>) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     fn environment(&self) -> Environment {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn on_heartbeat_is_due(&mut self) -> Result<(), Self::Error> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     fn fetch_messages(&mut self) -> Result<&[&[u8]], Self::Error>;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/mod.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn pending_message(&mut self) -> Option<&[u8]>;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/session/mod.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub struct State {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/session/mod.rs:96:1
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub struct MsgSeqNumCounter(u64);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated constant
[INFO] [stdout]   --> src/session/mod.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub const START: Self = Self(0);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/session/mod.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn next(&mut self) -> u64 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/session/mod.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     pub fn expected(&self) -> u64 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]  --> src/session/backends.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub trait Application {}
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/config.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn begin_string(&self) -> &[u8] {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/config.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn sender_comp_id(&self) -> &[u8] {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/config.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn target_comp_id(&self) -> &[u8] {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/config.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn environment(&self) -> Environment {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/config.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn heartbeat(&self) -> Duration {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/event_loop.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub async fn next_event<'a>(&'a mut self) -> Option<LlEvent<'a>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/session/resend_request_range.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn new(start: usize, end: Option<usize>) -> Self {
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/session/seq_numbers.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub next_inbound: u64,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/session/seq_numbers.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub next_outbound: u64,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/seq_numbers.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn incr_inbound(&mut self) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/seq_numbers.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     pub fn incr_outbound(&mut self) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/session/seq_numbers.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub fn validate_inbound(&self, inbound: u64) -> Result<(), SeqNumberError> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/session/seq_numbers.rs:59:1
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub enum SeqNumberError {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/session/seq_numbers.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     Recover,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/session/seq_numbers.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     TooLow,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/session/seq_numbers.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     NoSeqNum,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]   --> src/tagvalue/mod.rs:84:1
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub trait FvWrite<'a, F> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/tagvalue/mod.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 | /     fn set_fv<'b, V>(&'b mut self, field: &F, value: V)
[INFO] [stdout] 86 | |     where
[INFO] [stdout] 87 | |         V: FixValue<'b>;
[INFO] [stdout]    | |________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/tagvalue/decoder.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     pub fn buffered(self) -> DecoderBuffered<C> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/tagvalue/decoder.rs:284:20
[INFO] [stdout]     |
[INFO] [stdout] 284 |     pub fn message(&self) -> Message<&[u8]> {
[INFO] [stdout]     |                    ^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                    |         |       |
[INFO] [stdout]     |                    |         |       the same lifetime is elided here
[INFO] [stdout]     |                    |         the same lifetime is hidden here
[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] 284 |     pub fn message(&self) -> Message<'_, &[u8]> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/tagvalue/decoder.rs:582:18
[INFO] [stdout]     |
[INFO] [stdout] 582 |     fn group_opt(&self, tag: &u32) -> Option<Result<Self::Group, <usize as FixValue>::Error>> {
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here               ^^^^^^^^^^^^^^^^^^^^^^^^^^ 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] 582 |     fn group_opt(&self, tag: &u32) -> Option<Result<Self::Group, <usize as FixValue<'_>>::Error>> {
[INFO] [stdout]     |                                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/tagvalue/encoder.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 | /     pub fn start_message<'a>(
[INFO] [stdout] 68 | |         &'a mut self,
[INFO] [stdout] 69 | |         begin_string: &[u8],
[INFO] [stdout] 70 | |         buffer: &'a mut Vec<u8>,
[INFO] [stdout] 71 | |         msg_type: &[u8],
[INFO] [stdout] 72 | |     ) -> EncoderHandle<'a, Vec<u8>, C> {
[INFO] [stdout]    | |______________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/tagvalue/encoder.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 | /     pub fn set_any<'b, T>(&mut self, tag: TagU16, value: T)
[INFO] [stdout] 158 | |     where
[INFO] [stdout] 159 | |         T: FixValue<'b>,
[INFO] [stdout]     | |________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/tagvalue/encoder.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     pub fn raw(&mut self, raw: &[u8]) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tagvalue/field_access.rs:22:14
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn group(&self, field: &F) -> Result<Self::Group, Option<<usize as FixValue>::Error>> {
[INFO] [stdout]    |              ^^^^^ the lifetime is elided here               ^^^^^^^^^^^^^^^^^^^^^^^^^^ 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] 22 |     fn group(&self, field: &F) -> Result<Self::Group, Option<<usize as FixValue<'_>>::Error>> {
[INFO] [stdout]    |                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tagvalue/field_access.rs:34:18
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn group_opt(&self, field: &F) -> Option<Result<Self::Group, <usize as FixValue>::Error>>;
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here               ^^^^^^^^^^^^^^^^^^^^^^^^^^ 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] 34 |     fn group_opt(&self, field: &F) -> Option<Result<Self::Group, <usize as FixValue<'_>>::Error>>;
[INFO] [stdout]    |                                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/tagvalue/field_access.rs:113:16
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn entries(&self) -> Entries<Self> {
[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] 113 |     fn entries(&self) -> Entries<'_, Self> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub tag: TagU16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub context: FieldLocatorContext,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum FieldLocatorContext {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     TopLevel,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     WithinGroup {
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         index_of_group_tag: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/tagvalue/field_locator.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |         entry_index: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/tagvalue/raw_decoder.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub data: T,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/tagvalue/raw_decoder.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub begin_string: Range<usize>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/tagvalue/raw_decoder.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub payload: Range<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/tagvalue/raw_decoder.rs:208:5
[INFO] [stdout]     |
[INFO] [stdout] 208 |     pub fn parse(&mut self) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/tagvalue/raw_decoder.rs:230:5
[INFO] [stdout]     |
[INFO] [stdout] 230 |     pub fn raw_frame<'a>(&'a self) -> Result<Option<RawFrame<&'a [u8]>>, DecodeError> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/tagvalue/tokio_decoder.rs:45:1
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct TokioDecoder<C = Config>
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 03s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: quick-xml v0.22.0, sqlx-core v0.5.13
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] running `Command { std: "docker" "inspect" "51ea87e603000402792f95b6e37f0e6dd241aaa8f891b3e7360b1a5222f6369d", 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" "51ea87e603000402792f95b6e37f0e6dd241aaa8f891b3e7360b1a5222f6369d" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stderr]    --> src/lib.rs:103:13
[INFO] [stderr]     |
[INFO] [stderr] 103 | #![cfg_attr(doc_cfg, feature(doc_cfg))]
[INFO] [stderr]     |             ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: expected names are: `docsrs`, `feature`, and `test` and 32 more
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stderr]   --> src/buffer.rs:70:12
[INFO] [stderr]    |
[INFO] [stderr] 70 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-bytes")))]
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stderr]    --> src/fix_values/date.rs:114:16
[INFO] [stderr]     |
[INFO] [stderr] 114 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stderr]     |                ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stderr]    --> src/fix_values/date.rs:125:16
[INFO] [stderr]     |
[INFO] [stderr] 125 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stderr]     |                ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stderr]    --> src/fix_values/time.rs:144:16
[INFO] [stderr]     |
[INFO] [stderr] 144 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stderr]     |                ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stderr]   --> src/fix_values/timestamp.rs:55:16
[INFO] [stderr]    |
[INFO] [stderr] 55 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stderr]    |                ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stderr]   --> src/fix_values/timestamp.rs:65:16
[INFO] [stderr]    |
[INFO] [stderr] 65 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stderr]    |                ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stderr]   --> src/fix_values/tz.rs:60:16
[INFO] [stderr]    |
[INFO] [stderr] 60 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stderr]    |                ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stderr]   --> src/fix_values/tz.rs:67:16
[INFO] [stderr]    |
[INFO] [stderr] 67 |     #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stderr]    |                ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stderr]  --> src/fix_values/utils_chrono.rs:8:12
[INFO] [stderr]   |
[INFO] [stderr] 8 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stderr]   |            ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: consider using a Cargo feature instead
[INFO] [stderr]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]            [lints.rust]
[INFO] [stderr]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stderr]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stderr]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stderr]   --> src/fix_values/utils_chrono.rs:18:12
[INFO] [stderr]    |
[INFO] [stderr] 18 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stderr]   --> src/fix_values/utils_chrono.rs:62:12
[INFO] [stderr]    |
[INFO] [stderr] 62 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-chrono")))]
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::Environment`
[INFO] [stderr]  --> src/session/backends.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use super::Environment;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::tagvalue::FvWrite`
[INFO] [stderr]  --> src/session/backends.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::tagvalue::FvWrite;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `futures::future::Fuse`
[INFO] [stderr]  --> src/session/event_loop.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use futures::future::Fuse;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `futures::future::Ready`
[INFO] [stderr]  --> src/session/event_loop.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use futures::future::Ready;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::dict::IsFieldDefinition`
[INFO] [stderr]   --> src/tagvalue/mod.rs:43:5
[INFO] [stderr]    |
[INFO] [stderr] 43 | use crate::dict::IsFieldDefinition;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `doc_cfg`
[INFO] [stderr]   --> src/tagvalue/tokio_decoder.rs:44:12
[INFO] [stderr]    |
[INFO] [stderr] 44 | #[cfg_attr(doc_cfg, doc(cfg(feature = "utils-tokio")))]
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated struct `chrono::Date`: Use `NaiveDate` or `DateTime<Tz>` instead
[INFO] [stderr]    --> src/fix_values/date.rs:115:51
[INFO] [stderr]     |
[INFO] [stderr] 115 |     pub fn to_chrono_utc(&self) -> Option<chrono::Date<chrono::Utc>> {
[INFO] [stderr]     |                                                   ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated struct `chrono::Date`: Use `NaiveDate` or `DateTime<Tz>` instead
[INFO] [stderr]    --> src/fix_values/date.rs:117:22
[INFO] [stderr]     |
[INFO] [stderr] 117 |         Some(chrono::Date::from_utc(naive, chrono::Utc))
[INFO] [stderr]     |                      ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stderr]   --> src/fix_values/timestamp.rs:58:32
[INFO] [stderr]    |
[INFO] [stderr] 58 |         Some(chrono::DateTime::from_utc(naive, chrono::Utc))
[INFO] [stderr]    |                                ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `chrono::FixedOffset::east`: use `east_opt()` instead
[INFO] [stderr]   --> src/fix_values/tz.rs:62:30
[INFO] [stderr]    |
[INFO] [stderr] 62 |         chrono::FixedOffset::east(self.offset().1.as_secs() as i32)
[INFO] [stderr]    |                              ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tag`
[INFO] [stderr]   --> src/tagvalue/encoder.rs:94:13
[INFO] [stderr]    |
[INFO] [stderr] 94 |         let tag = TagU16::new(10 as u16).unwrap();
[INFO] [stderr]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_tag`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `next_inbound` and `next_outbound` are never read
[INFO] [stderr]   --> src/session/mod.rs:91:5
[INFO] [stderr]    |
[INFO] [stderr] 90 | pub struct State {
[INFO] [stderr]    |            ----- fields in this struct
[INFO] [stderr] 91 |     next_inbound: u64,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 92 |     next_outbound: u64,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `State` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `tag` is never read
[INFO] [stderr]    --> src/tagvalue/decoder.rs:437:5
[INFO] [stderr]     |
[INFO] [stderr] 436 | struct DecoderStateNewGroup {
[INFO] [stderr]     |        -------------------- field in this struct
[INFO] [stderr] 437 |     tag: TagU16,
[INFO] [stderr]     |     ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `DecoderStateNewGroup` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `i_first_cell`, `i_last_cell`, `len_end_header`, `len_end_body`, and `len_end_trailer` are never read
[INFO] [stderr]    --> src/tagvalue/decoder.rs:494:5
[INFO] [stderr]     |
[INFO] [stderr] 489 | struct MessageBuilder<'a> {
[INFO] [stderr]     |        -------------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 494 |     i_first_cell: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 495 |     i_last_cell: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^
[INFO] [stderr] 496 |     len_end_header: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^
[INFO] [stderr] 497 |     len_end_body: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 498 |     len_end_trailer: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `MessageBuilder` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `GroupRef` is never constructed
[INFO] [stderr]    --> src/tagvalue/decoder.rs:653:12
[INFO] [stderr]     |
[INFO] [stderr] 653 | pub struct GroupRef<'a, T>
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `GroupRefIter` is never constructed
[INFO] [stderr]    --> src/tagvalue/decoder.rs:663:12
[INFO] [stderr]     |
[INFO] [stderr] 663 | pub struct GroupRefIter<'a, T>
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `TokioRawDecoder` is never constructed
[INFO] [stderr]  --> src/tagvalue/tokio_decoder.rs:7:12
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub struct TokioRawDecoder<C = Config> {
[INFO] [stderr]   |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `dict` and `raw_decoder` are never read
[INFO] [stderr]   --> src/tagvalue/tokio_decoder.rs:49:5
[INFO] [stderr]    |
[INFO] [stderr] 45 | pub struct TokioDecoder<C = Config>
[INFO] [stderr]    |            ------------ fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 49 |     dict: Dictionary,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 50 |     raw_decoder: Decoder<C>,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `TokioDecoder` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/fefix_core/dict.rs:288:44
[INFO] [stderr]     |
[INFO] [stderr] 288 |     pub fn abbreviation_for<S: AsRef<str>>(&self, term: S) -> Option<Abbreviation> {
[INFO] [stderr]     |                                            ^^^^^                     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                            |
[INFO] [stderr]     |                                            the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 288 |     pub fn abbreviation_for<S: AsRef<str>>(&self, term: S) -> Option<Abbreviation<'_>> {
[INFO] [stderr]     |                                                                                  ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/fefix_core/dict.rs:305:43
[INFO] [stderr]     |
[INFO] [stderr] 305 |     pub fn message_by_name<S: AsRef<str>>(&self, name: S) -> Option<Message> {
[INFO] [stderr]     |                                           ^^^^^                     ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                           |
[INFO] [stderr]     |                                           the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 305 |     pub fn message_by_name<S: AsRef<str>>(&self, name: S) -> Option<Message<'_>> {
[INFO] [stderr]     |                                                                            ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/fefix_core/dict.rs:322:46
[INFO] [stderr]     |
[INFO] [stderr] 322 |     pub fn message_by_msgtype<S: AsRef<str>>(&self, msgtype: S) -> Option<Message> {
[INFO] [stderr]     |                                              ^^^^^                        ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                              |
[INFO] [stderr]     |                                              the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 322 |     pub fn message_by_msgtype<S: AsRef<str>>(&self, msgtype: S) -> Option<Message<'_>> {
[INFO] [stderr]     |                                                                                  ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/fefix_core/dict.rs:329:45
[INFO] [stderr]     |
[INFO] [stderr] 329 |     pub fn component_by_name<S: AsRef<str>>(&self, name: S) -> Option<Component> {
[INFO] [stderr]     |                                             ^^^^^                     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                             |
[INFO] [stderr]     |                                             the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 329 |     pub fn component_by_name<S: AsRef<str>>(&self, name: S) -> Option<Component<'_>> {
[INFO] [stderr]     |                                                                                ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/fefix_core/dict.rs:344:44
[INFO] [stderr]     |
[INFO] [stderr] 344 |     pub fn datatype_by_name<S: AsRef<str>>(&self, name: S) -> Option<Datatype> {
[INFO] [stderr]     |                                            ^^^^^                     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                            |
[INFO] [stderr]     |                                            the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 344 |     pub fn datatype_by_name<S: AsRef<str>>(&self, name: S) -> Option<Datatype<'_>> {
[INFO] [stderr]     |                                                                              ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/fefix_core/dict.rs:360:25
[INFO] [stderr]     |
[INFO] [stderr] 360 |     pub fn field_by_tag(&self, tag: u32) -> Option<Field> {
[INFO] [stderr]     |                         ^^^^^                      ^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                         |
[INFO] [stderr]     |                         the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 360 |     pub fn field_by_tag(&self, tag: u32) -> Option<Field<'_>> {
[INFO] [stderr]     |                                                         ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/fefix_core/dict.rs:367:41
[INFO] [stderr]     |
[INFO] [stderr] 367 |     pub fn field_by_name<S: AsRef<str>>(&self, name: S) -> Option<Field> {
[INFO] [stderr]     |                                         ^^^^^                     ^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                         |
[INFO] [stderr]     |                                         the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 367 |     pub fn field_by_name<S: AsRef<str>>(&self, name: S) -> Option<Field<'_>> {
[INFO] [stderr]     |                                                                        ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/fefix_core/dict.rs:383:27
[INFO] [stderr]     |
[INFO] [stderr] 383 |     pub fn iter_datatypes(&self) -> impl Iterator<Item = Datatype> {
[INFO] [stderr]     |                           ^^^^^                          ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                           |
[INFO] [stderr]     |                           the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 383 |     pub fn iter_datatypes(&self) -> impl Iterator<Item = Datatype<'_>> {
[INFO] [stderr]     |                                                                  ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/fefix_core/dict.rs:400:26
[INFO] [stderr]     |
[INFO] [stderr] 400 |     pub fn iter_messages(&self) -> impl Iterator<Item = Message> {
[INFO] [stderr]     |                          ^^^^^                          ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                          |
[INFO] [stderr]     |                          the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 400 |     pub fn iter_messages(&self) -> impl Iterator<Item = Message<'_>> {
[INFO] [stderr]     |                                                                ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/fefix_core/dict.rs:409:28
[INFO] [stderr]     |
[INFO] [stderr] 409 |     pub fn iter_categories(&self) -> impl Iterator<Item = Category> {
[INFO] [stderr]     |                            ^^^^^                          ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                            |
[INFO] [stderr]     |                            the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 409 |     pub fn iter_categories(&self) -> impl Iterator<Item = Category<'_>> {
[INFO] [stderr]     |                                                                   ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/fefix_core/dict.rs:418:24
[INFO] [stderr]     |
[INFO] [stderr] 418 |     pub fn iter_fields(&self) -> impl Iterator<Item = Field> {
[INFO] [stderr]     |                        ^^^^^                          ^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                        |
[INFO] [stderr]     |                        the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 418 |     pub fn iter_fields(&self) -> impl Iterator<Item = Field<'_>> {
[INFO] [stderr]     |                                                            ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/fefix_core/dict.rs:424:28
[INFO] [stderr]     |
[INFO] [stderr] 424 |     pub fn iter_components(&self) -> impl Iterator<Item = Component> {
[INFO] [stderr]     |                            ^^^^^                          ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                            |
[INFO] [stderr]     |                            the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 424 |     pub fn iter_components(&self) -> impl Iterator<Item = Component<'_>> {
[INFO] [stderr]     |                                                                    ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/fefix_core/dict.rs:590:21
[INFO] [stderr]     |
[INFO] [stderr] 590 |     pub fn category(&self) -> Category {
[INFO] [stderr]     |                     ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 590 |     pub fn category(&self) -> Category<'_> {
[INFO] [stderr]     |                                       ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/fefix_core/dict.rs:601:18
[INFO] [stderr]     |
[INFO] [stderr] 601 |     pub fn items(&self) -> impl Iterator<Item = LayoutItem> {
[INFO] [stderr]     |                  ^^^^^                          ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 601 |     pub fn items(&self) -> impl Iterator<Item = LayoutItem<'_>> {
[INFO] [stderr]     |                                                           ++++
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/fefix_core/dict.rs:625:5
[INFO] [stderr]     |
[INFO] [stderr] 625 |     Xml,
[INFO] [stderr]     |     ^^^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:86:9
[INFO] [stderr]     |
[INFO] [stderr]  86 | #![warn(missing_docs)]
[INFO] [stderr]     |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/fefix_core/dict.rs:626:5
[INFO] [stderr]     |
[INFO] [stderr] 626 |     Block {
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/fefix_core/dict.rs:627:9
[INFO] [stderr]     |
[INFO] [stderr] 627 |         is_repeating: bool,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/fefix_core/dict.rs:628:9
[INFO] [stderr]     |
[INFO] [stderr] 628 |         is_implicit: bool,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/fefix_core/dict.rs:629:9
[INFO] [stderr]     |
[INFO] [stderr] 629 |         is_optimized: bool,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/fefix_core/dict.rs:631:5
[INFO] [stderr]     |
[INFO] [stderr] 631 |     Message,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]     --> src/fefix_core/dict.rs:1119:5
[INFO] [stderr]      |
[INFO] [stderr] 1119 |     pub fn doc_url_onixs(&self, version: &str) -> String {
[INFO] [stderr]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]     --> src/fefix_core/dict.rs:1158:18
[INFO] [stderr]      |
[INFO] [stderr] 1158 |     pub fn enums(&self) -> Option<impl Iterator<Item = FieldEnum>> {
[INFO] [stderr]      |                  ^^^^^ the lifetime is elided here     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]      |
[INFO] [stderr] 1158 |     pub fn enums(&self) -> Option<impl Iterator<Item = FieldEnum<'_>>> {
[INFO] [stderr]      |                                                                 ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]     --> src/fefix_core/dict.rs:1166:22
[INFO] [stderr]      |
[INFO] [stderr] 1166 |     pub fn data_type(&self) -> Datatype {
[INFO] [stderr]      |                      ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |                      |
[INFO] [stderr]      |                      the lifetime is elided here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]      |
[INFO] [stderr] 1166 |     pub fn data_type(&self) -> Datatype<'_> {
[INFO] [stderr]      |                                        ++++
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a trait
[INFO] [stderr]     --> src/fefix_core/dict.rs:1212:1
[INFO] [stderr]      |
[INFO] [stderr] 1212 | pub trait IsFieldDefinition {
[INFO] [stderr]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]     --> src/fefix_core/dict.rs:1270:17
[INFO] [stderr]      |
[INFO] [stderr] 1270 |     pub fn kind(&self) -> LayoutItemKind {
[INFO] [stderr]      |                 ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |                 |
[INFO] [stderr]      |                 the lifetime is elided here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]      |
[INFO] [stderr] 1270 |     pub fn kind(&self) -> LayoutItemKind<'_> {
[INFO] [stderr]      |                                         ++++
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]     --> src/fefix_core/dict.rs:1354:5
[INFO] [stderr]      |
[INFO] [stderr] 1354 |     pub fn group_info(&self, num_in_group_tag: TagU16) -> Option<TagU16> {
[INFO] [stderr]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]     --> src/fefix_core/dict.rs:1379:5
[INFO] [stderr]      |
[INFO] [stderr] 1379 |     pub fn layout(&self) -> impl Iterator<Item = LayoutItem> {
[INFO] [stderr]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]     --> src/fefix_core/dict.rs:1379:19
[INFO] [stderr]      |
[INFO] [stderr] 1379 |     pub fn layout(&self) -> impl Iterator<Item = LayoutItem> {
[INFO] [stderr]      |                   ^^^^^                          ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |                   |
[INFO] [stderr]      |                   the lifetime is elided here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]      |
[INFO] [stderr] 1379 |     pub fn layout(&self) -> impl Iterator<Item = LayoutItem<'_>> {
[INFO] [stderr]      |                                                            ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]     --> src/fefix_core/dict.rs:1427:19
[INFO] [stderr]      |
[INFO] [stderr] 1427 |         fn as_ref(&self) -> KeyRef {
[INFO] [stderr]      |                   ^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |                   |
[INFO] [stderr]      |                   the lifetime is elided here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]      |
[INFO] [stderr] 1427 |         fn as_ref(&self) -> KeyRef<'_> {
[INFO] [stderr]      |                                   ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]     --> src/fefix_core/dict.rs:1442:19
[INFO] [stderr]      |
[INFO] [stderr] 1442 |         fn to_key(&self) -> KeyRef;
[INFO] [stderr]      |                   ^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |                   |
[INFO] [stderr]      |                   the lifetime is elided here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]      |
[INFO] [stderr] 1442 |         fn to_key(&self) -> KeyRef<'_>;
[INFO] [stderr]      |                                   ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]     --> src/fefix_core/dict.rs:1446:19
[INFO] [stderr]      |
[INFO] [stderr] 1446 |         fn to_key(&self) -> KeyRef {
[INFO] [stderr]      |                   ^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |                   |
[INFO] [stderr]      |                   the lifetime is elided here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]      |
[INFO] [stderr] 1446 |         fn to_key(&self) -> KeyRef<'_> {
[INFO] [stderr]      |                                   ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]     --> src/fefix_core/dict.rs:1452:19
[INFO] [stderr]      |
[INFO] [stderr] 1452 |         fn to_key(&self) -> KeyRef {
[INFO] [stderr]      |                   ^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |                   |
[INFO] [stderr]      |                   the lifetime is elided here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]      |
[INFO] [stderr] 1452 |         fn to_key(&self) -> KeyRef<'_> {
[INFO] [stderr]      |                                   ++++
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]  --> src/session/mod.rs:8:1
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub mod backends;
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/mod.rs:36:5
[INFO] [stderr]    |
[INFO] [stderr] 36 |     fn sender_comp_id(&self) -> &[u8];
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/mod.rs:37:5
[INFO] [stderr]    |
[INFO] [stderr] 37 |     fn target_comp_id(&self) -> &[u8];
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/mod.rs:39:5
[INFO] [stderr]    |
[INFO] [stderr] 39 |     fn message_encoding(&self) -> Option<&[u8]> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/mod.rs:43:5
[INFO] [stderr]    |
[INFO] [stderr] 43 |     fn set_sender_and_target<'a>(&'a self, msg: &mut impl FvWrite<'a, u32>) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/mod.rs:48:5
[INFO] [stderr]    |
[INFO] [stderr] 48 |     fn environment(&self) -> Environment {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/mod.rs:53:5
[INFO] [stderr]    |
[INFO] [stderr] 53 |     fn on_heartbeat_is_due(&mut self) -> Result<(), Self::Error> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/mod.rs:84:5
[INFO] [stderr]    |
[INFO] [stderr] 84 |     fn fetch_messages(&mut self) -> Result<&[&[u8]], Self::Error>;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/mod.rs:86:5
[INFO] [stderr]    |
[INFO] [stderr] 86 |     fn pending_message(&mut self) -> Option<&[u8]>;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/session/mod.rs:90:1
[INFO] [stderr]    |
[INFO] [stderr] 90 | pub struct State {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/session/mod.rs:96:1
[INFO] [stderr]    |
[INFO] [stderr] 96 | pub struct MsgSeqNumCounter(u64);
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated constant
[INFO] [stderr]   --> src/session/mod.rs:99:5
[INFO] [stderr]    |
[INFO] [stderr] 99 |     pub const START: Self = Self(0);
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/session/mod.rs:102:5
[INFO] [stderr]     |
[INFO] [stderr] 102 |     pub fn next(&mut self) -> u64 {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/session/mod.rs:108:5
[INFO] [stderr]     |
[INFO] [stderr] 108 |     pub fn expected(&self) -> u64 {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a trait
[INFO] [stderr]  --> src/session/backends.rs:4:1
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub trait Application {}
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/config.rs:27:5
[INFO] [stderr]    |
[INFO] [stderr] 27 |     fn begin_string(&self) -> &[u8] {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/config.rs:31:5
[INFO] [stderr]    |
[INFO] [stderr] 31 |     fn sender_comp_id(&self) -> &[u8] {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/config.rs:35:5
[INFO] [stderr]    |
[INFO] [stderr] 35 |     fn target_comp_id(&self) -> &[u8] {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/config.rs:39:5
[INFO] [stderr]    |
[INFO] [stderr] 39 |     fn environment(&self) -> Environment {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/config.rs:43:5
[INFO] [stderr]    |
[INFO] [stderr] 43 |     fn heartbeat(&self) -> Duration {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/event_loop.rs:60:5
[INFO] [stderr]    |
[INFO] [stderr] 60 |     pub async fn next_event<'a>(&'a mut self) -> Option<LlEvent<'a>> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]  --> src/session/resend_request_range.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 |     pub fn new(start: usize, end: Option<usize>) -> Self {
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]  --> src/session/seq_numbers.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 |     pub next_inbound: u64,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]  --> src/session/seq_numbers.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     pub next_outbound: u64,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/seq_numbers.rs:30:5
[INFO] [stderr]    |
[INFO] [stderr] 30 |     pub fn incr_inbound(&mut self) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/seq_numbers.rs:34:5
[INFO] [stderr]    |
[INFO] [stderr] 34 |     pub fn incr_outbound(&mut self) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/session/seq_numbers.rs:38:5
[INFO] [stderr]    |
[INFO] [stderr] 38 |     pub fn validate_inbound(&self, inbound: u64) -> Result<(), SeqNumberError> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]   --> src/session/seq_numbers.rs:59:1
[INFO] [stderr]    |
[INFO] [stderr] 59 | pub enum SeqNumberError {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/session/seq_numbers.rs:60:5
[INFO] [stderr]    |
[INFO] [stderr] 60 |     Recover,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/session/seq_numbers.rs:61:5
[INFO] [stderr]    |
[INFO] [stderr] 61 |     TooLow,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/session/seq_numbers.rs:62:5
[INFO] [stderr]    |
[INFO] [stderr] 62 |     NoSeqNum,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a trait
[INFO] [stderr]   --> src/tagvalue/mod.rs:84:1
[INFO] [stderr]    |
[INFO] [stderr] 84 | pub trait FvWrite<'a, F> {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/tagvalue/mod.rs:85:5
[INFO] [stderr]    |
[INFO] [stderr] 85 | /     fn set_fv<'b, V>(&'b mut self, field: &F, value: V)
[INFO] [stderr] 86 | |     where
[INFO] [stderr] 87 | |         V: FixValue<'b>;
[INFO] [stderr]    | |________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/tagvalue/decoder.rs:54:5
[INFO] [stderr]    |
[INFO] [stderr] 54 |     pub fn buffered(self) -> DecoderBuffered<C> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/tagvalue/decoder.rs:284:20
[INFO] [stderr]     |
[INFO] [stderr] 284 |     pub fn message(&self) -> Message<&[u8]> {
[INFO] [stderr]     |                    ^^^^^     ^^^^^^^^^^^^^^
[INFO] [stderr]     |                    |         |       |
[INFO] [stderr]     |                    |         |       the same lifetime is elided here
[INFO] [stderr]     |                    |         the same lifetime is hidden here
[INFO] [stderr]     |                    the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 284 |     pub fn message(&self) -> Message<'_, &[u8]> {
[INFO] [stderr]     |                                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/tagvalue/decoder.rs:582:18
[INFO] [stderr]     |
[INFO] [stderr] 582 |     fn group_opt(&self, tag: &u32) -> Option<Result<Self::Group, <usize as FixValue>::Error>> {
[INFO] [stderr]     |                  ^^^^^ the lifetime is elided here               ^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 582 |     fn group_opt(&self, tag: &u32) -> Option<Result<Self::Group, <usize as FixValue<'_>>::Error>> {
[INFO] [stderr]     |                                                                                    ++++
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/tagvalue/encoder.rs:67:5
[INFO] [stderr]    |
[INFO] [stderr] 67 | /     pub fn start_message<'a>(
[INFO] [stderr] 68 | |         &'a mut self,
[INFO] [stderr] 69 | |         begin_string: &[u8],
[INFO] [stderr] 70 | |         buffer: &'a mut Vec<u8>,
[INFO] [stderr] 71 | |         msg_type: &[u8],
[INFO] [stderr] 72 | |     ) -> EncoderHandle<'a, Vec<u8>, C> {
[INFO] [stderr]    | |______________________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/tagvalue/encoder.rs:157:5
[INFO] [stderr]     |
[INFO] [stderr] 157 | /     pub fn set_any<'b, T>(&mut self, tag: TagU16, value: T)
[INFO] [stderr] 158 | |     where
[INFO] [stderr] 159 | |         T: FixValue<'b>,
[INFO] [stderr]     | |________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/tagvalue/encoder.rs:168:5
[INFO] [stderr]     |
[INFO] [stderr] 168 |     pub fn raw(&mut self, raw: &[u8]) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/tagvalue/field_access.rs:22:14
[INFO] [stderr]    |
[INFO] [stderr] 22 |     fn group(&self, field: &F) -> Result<Self::Group, Option<<usize as FixValue>::Error>> {
[INFO] [stderr]    |              ^^^^^ the lifetime is elided here               ^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 22 |     fn group(&self, field: &F) -> Result<Self::Group, Option<<usize as FixValue<'_>>::Error>> {
[INFO] [stderr]    |                                                                                ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/tagvalue/field_access.rs:34:18
[INFO] [stderr]    |
[INFO] [stderr] 34 |     fn group_opt(&self, field: &F) -> Option<Result<Self::Group, <usize as FixValue>::Error>>;
[INFO] [stderr]    |                  ^^^^^ the lifetime is elided here               ^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 34 |     fn group_opt(&self, field: &F) -> Option<Result<Self::Group, <usize as FixValue<'_>>::Error>>;
[INFO] [stderr]    |                                                                                    ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/tagvalue/field_access.rs:113:16
[INFO] [stderr]     |
[INFO] [stderr] 113 |     fn entries(&self) -> Entries<Self> {
[INFO] [stderr]     |                ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                |
[INFO] [stderr]     |                the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 113 |     fn entries(&self) -> Entries<'_, Self> {
[INFO] [stderr]     |                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/tagvalue/field_locator.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 |     pub tag: TagU16,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/tagvalue/field_locator.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 |     pub context: FieldLocatorContext,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]   --> src/tagvalue/field_locator.rs:18:1
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub enum FieldLocatorContext {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/tagvalue/field_locator.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 |     TopLevel,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/tagvalue/field_locator.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 |     WithinGroup {
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/tagvalue/field_locator.rs:21:9
[INFO] [stderr]    |
[INFO] [stderr] 21 |         index_of_group_tag: u32,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/tagvalue/field_locator.rs:22:9
[INFO] [stderr]    |
[INFO] [stderr] 22 |         entry_index: u32,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]  --> src/tagvalue/raw_decoder.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     pub data: T,
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]  --> src/tagvalue/raw_decoder.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 |     pub begin_string: Range<usize>,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/tagvalue/raw_decoder.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 |     pub payload: Range<usize>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/tagvalue/raw_decoder.rs:208:5
[INFO] [stderr]     |
[INFO] [stderr] 208 |     pub fn parse(&mut self) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/tagvalue/raw_decoder.rs:230:5
[INFO] [stderr]     |
[INFO] [stderr] 230 |     pub fn raw_frame<'a>(&'a self) -> Result<Option<RawFrame<&'a [u8]>>, DecodeError> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/tagvalue/tokio_decoder.rs:45:1
[INFO] [stderr]    |
[INFO] [stderr] 45 | pub struct TokioDecoder<C = Config>
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]    --> src/fefix_core/dict.rs:260:5
[INFO] [stderr]     |
[INFO] [stderr] 260 |     pub fn all() -> Vec<Dictionary> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:86:9
[INFO] [stderr]     |
[INFO] [stderr]  86 | #![warn(missing_docs)]
[INFO] [stderr]     |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/fefix_core/dict.rs:625:5
[INFO] [stderr]     |
[INFO] [stderr] 625 |     Xml,
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `fefix` (lib) generated 117 warnings (run `cargo fix --lib -p fefix` to apply 33 suggestions)
[INFO] [stderr] warning: `fefix` (lib test) generated 118 warnings (116 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.44s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: quick-xml v0.22.0, sqlx-core v0.5.13
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/fefix-80b26d2254308c28)
[INFO] [stdout] 
[INFO] [stdout] running 82 tests
[INFO] [stdout] test fefix_core::dict::datatype::test::base_type_is_actually_base_type ... ok
[INFO] [stdout] test buffer::test::vec_clear_always_removes_content ... ok
[INFO] [stdout] test buffer::test::vec_slicing_is_consistent ... ok
[INFO] [stdout] test fefix_core::dict::datatype::test::base_type_is_itself ... ok
[INFO] [stdout] test fefix_core::dict::datatype::test::iter_all_unique ... ok
[INFO] [stdout] test fefix_core::dict::datatype::test::more_than_20_datatypes ... ok
[INFO] [stdout] test fefix_core::dict::datatype::test::names_are_unique ... ok
[INFO] [stdout] test fix_values::checksum::test::edges_cases ... ok
[INFO] [stdout] test fix_values::checksum::test::serializes_as_integer ... ok
[INFO] [stdout] test fix_values::checksum::test::verify_serialization_behavior ... ok
[INFO] [stdout] test fix_values::date::test::lossless_deserialization_detects_errors ... ok
[INFO] [stdout] test fix_values::date::test::lossy_and_lossless_are_equivalent ... ok
[INFO] [stdout] test fix_values::date::test::new_via_getters ... ok
[INFO] [stdout] test fix_values::date::test::serialize_and_deserialize_are_consistent_with_each_other ... ok
[INFO] [stdout] test fix_values::date::test::to_yyyymmdd_to_bytes_are_the_same ... ok
[INFO] [stdout] test fix_values::checksum::test::serialized_takes_three_bytes ... ok
[INFO] [stdout] test fix_values::monthyear::test::can_deserialize_after_serializing ... ok
[INFO] [stdout] test fefix_core::dict::test::invalid_quickfix_specs ... ok
[INFO] [stdout] test fix_values::monthyear::test::verify_serialization_behavior ... ok
[INFO] [stdout] test fix_values::multiple_chars::test::one_char_trailing_space ... ok
[INFO] [stdout] test fix_values::date::test::verify_serialization_behavior ... ok
[INFO] [stdout] test fix_values::multiple_chars::test::leading_space_not_detected ... ok
[INFO] [stdout] test fix_values::multiple_strings::test::a_single_word_has_one_value ... ok
[INFO] [stdout] test fix_values::multiple_chars::test::empty ... ok
[INFO] [stdout] test fix_values::multiple_chars::test::one_char ... ok
[INFO] [stdout] test fix_values::multiple_strings::test::empty_data_has_no_values ... ok
[INFO] [stdout] test fix_values::multiple_strings::test::whitespace_has_no_values ... ok
[INFO] [stdout] test fix_values::multiple_strings::test::words_separated_by_space ... ok
[INFO] [stdout] test fix_values::multiple_strings::test::words_with_leading_spaces ... ok
[INFO] [stdout] test fix_values::multiple_strings::test::words_with_trailing_spaces ... ok
[INFO] [stdout] test fix_values::test::serialize_bools ... ok
[INFO] [stdout] test fix_values::multiple_strings::test::word_with_trailing_space ... ok
[INFO] [stdout] test fix_values::time::test::valid_test_cases ... ok
[INFO] [stdout] test fix_values::tz::test::deserialize_empty_is_err ... ok
[INFO] [stdout] test fix_values::time::test::verify_serialization_behavior ... ok
[INFO] [stdout] test fix_values::tz::test::negative_without_minutes ... ok
[INFO] [stdout] test fix_values::test::u32_serialize ... ok
[INFO] [stdout] test fix_values::timestamp::test::verify_serialization_behavior ... ok
[INFO] [stdout] test fix_values::test::serialize_country ... ok
[INFO] [stdout] test fix_values::test::serialize_currency ... ok
[INFO] [stdout] test fix_values::tz::test::negative_with_minutes ... ok
[INFO] [stdout] test fix_values::tz::test::utc ... ok
[INFO] [stdout] test session::config::test::config_defaults ... ok
[INFO] [stdout] test fix_values::tz_time::test::valid_test_cases ... ok
[INFO] [stdout] test session::config::test::config_set_max_allowed_latency ... ok
[INFO] [stdout] test session::config::test::config_set_verify_test_indicator ... ok
[INFO] [stdout] test tagvalue::config::test::config_separator_can_be_changed ... ok
[INFO] [stdout] test session::heartbeat_rule::test::heartebeat_validation ... ok
[INFO] [stdout] test tagvalue::config::test::config_checksum_verification_can_be_changed ... ok
[INFO] [stdout] test tagvalue::config::test::config_separator_is_soh_by_default ... ok
[INFO] [stdout] test tagvalue::config::test::config_verifies_checksum_by_default ... ok
[INFO] [stdout] test fix_values::test::serialize_bytes ... ok
[INFO] [stdout] test fefix_core::dict::test::fix44_field_36_has_no_variants ... ok
[INFO] [stdout] test fefix_core::dict::test::fix44_quickfix_is_ok ... ok
[INFO] [stdout] test tagvalue::decoder::test::message_must_end_with_separator ... ok
[INFO] [stdout] test tagvalue::decoder::test::message_with_data_field ... ok
[INFO] [stdout] test fefix_core::dict::test::std_header_and_trailer_always_present ... ok
[INFO] [stdout] test fefix_core::dict::test::at_least_one_datatype ... ok
[INFO] [stdout] test tagvalue::raw_decoder::test::edge_cases_dont_cause_panic ... ok
[INFO] [stdout] test tagvalue::raw_decoder::test::empty_message_is_invalid ... ok
[INFO] [stdout] test tagvalue::raw_decoder::test::message_with_bad_checksum_is_invalid ... ok
[INFO] [stdout] test tagvalue::raw_decoder::test::message_with_empty_payload_is_invalid ... ok
[INFO] [stdout] test tagvalue::raw_decoder::test::message_with_only_msg_type_tag_is_valid ... ok
[INFO] [stdout] test tagvalue::raw_decoder::test::new_buffered_decoder ... ok
[INFO] [stdout] test tagvalue::raw_decoder::test::new_buffered_decoder_has_no_current_frame ... ok
[INFO] [stdout] test tagvalue::raw_decoder::test::sample_message_is_valid ... ok
[INFO] [stdout] test tagvalue::utils::test::correct_retrieval_of_checksum_digits ... ok
[INFO] [stdout] test tagvalue::decoder::test::message_without_checksum ... ok
[INFO] [stdout] test fefix_core::dict::test::fix44_field_167_has_eucorp_variant ... ok
[INFO] [stdout] test tagvalue::decoder::test::can_parse_simple_message ... ok
[INFO] [stdout] test fefix_core::dict::test::fix44_field_28_has_three_variants ... ok
[INFO] [stdout] test fefix_core::dict::test::all_datatypes_are_used_at_least_once ... ok
[INFO] [stdout] test tagvalue::decoder::test::heartbeat_message_fields_are_ok ... ok
[INFO] [stdout] test tagvalue::decoder::test::detect_incorrect_checksum ... ok
[INFO] [stdout] test tagvalue::decoder::test::message_without_final_separator ... ok
[INFO] [stdout] test tagvalue::decoder::test::message_without_standard_header ... ok
[INFO] [stdout] test tagvalue::decoder::test::no_skip_checksum_verification ... ok
[INFO] [stdout] test tagvalue::decoder::test::skip_checksum_verification ... ok
[INFO] [stdout] test tagvalue::decoder::test::repeating_group_entries ... ok
[INFO] [stdout] test tagvalue::decoder::test::top_level_tag_after_empty_group ... ok
[INFO] [stdout] test tagvalue::decoder::test::assortment_of_random_messages_is_ok ... ok
[INFO] [stdout] test session::event_loop::test::dead_input_triggers_logout ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 82 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 6.63s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests fefix
[INFO] [stdout] 
[INFO] [stdout] running 45 tests
[INFO] [stdout] test src/fefix_core/dict.rs - fefix_core::dict::Dictionary::iter_messages (line 393) ... ok
[INFO] [stdout] test src/fefix_core/dict.rs - fefix_core::dict::datatype::FixDatatype::base_type (line 974) ... ok
[INFO] [stdout] test src/fefix_core/dict.rs - fefix_core::dict::Dictionary::get_version (line 179) ... ok
[INFO] [stdout] test src/fefix_core/dict.rs - fefix_core::dict::datatype::FixDatatype::from_quickfix_name (line 816) ... ok
[INFO] [stdout] test src/fefix_core/dict.rs - fefix_core::dict::Dictionary::datatype_by_name (line 337) ... ok
[INFO] [stdout] test src/fix_values/date.rs - fix_values::date::Date::new (line 40) ... ok
[INFO] [stdout] test src/fix_values/monthyear.rs - fix_values::monthyear::MonthYear::day (line 82) ... ok
[INFO] [stdout] test src/fefix_core/dict.rs - fefix_core::dict::datatype::FixDatatype::is_base_type (line 956) ... ok
[INFO] [stdout] test src/fefix_core/dict.rs - fefix_core::dict::datatype::FixDatatype::name (line 906) ... ok
[INFO] [stdout] test src/fefix_core/dict.rs - fefix_core::dict::Dictionary::message_by_msgtype (line 313) ... ok
[INFO] [stdout] test src/fix_values/mod.rs - fix_values (line 31) ... ok
[INFO] [stdout] test src/fix_values/date.rs - fix_values::date::Date::to_yyyymmdd (line 73) ... ok
[INFO] [stdout] test src/fefix_core/dict.rs - fefix_core::dict::Dictionary::iter_datatypes (line 376) ... ok
[INFO] [stdout] test src/fix_values/monthyear.rs - fix_values::monthyear::MonthYear::day (line 92) ... ok
[INFO] [stdout] test src/fefix_core/dict.rs - fefix_core::dict::Dictionary::message_by_name (line 296) ... ok
[INFO] [stdout] test src/session/environment.rs - session::environment::Environment::allows_testing (line 24) ... FAILED
[INFO] [stdout] test src/fix_values/time.rs - fix_values::time::Time::hour (line 74) ... ok
[INFO] [stdout] test src/fix_values/time.rs - fix_values::time::Time::minute (line 89) ... ok
[INFO] [stdout] test src/fefix_core/dict.rs - fefix_core::dict::Dictionary::field_by_tag (line 352) ... ok
[INFO] [stdout] test src/fix_values/monthyear.rs - fix_values::monthyear::MonthYear::week (line 124) ... ok
[INFO] [stdout] test src/fix_values/monthyear.rs - fix_values::monthyear::MonthYear::week (line 114) ... ok
[INFO] [stdout] test src/fix_values/monthyear.rs - fix_values::monthyear::MonthYear::year (line 50) ... ok
[INFO] [stdout] test src/fix_values/monthyear.rs - fix_values::monthyear::MonthYear::month (line 65) ... ok
[INFO] [stdout] test src/fix_values/tz_time.rs - fix_values::tz_time::TzTime::hour (line 34) ... ok
[INFO] [stdout] test src/fix_values/multiple_strings.rs - fix_values::multiple_strings::MultipleStrings (line 10) ... ok
[INFO] [stdout] test src/fix_values/time.rs - fix_values::time::Time::milli (line 129) ... ok
[INFO] [stdout] test src/fix_values/time.rs - fix_values::time::Time::second (line 114) ... ok
[INFO] [stdout] test src/fix_values/time.rs - fix_values::time::Time::second (line 104) ... ok
[INFO] [stdout] test src/fix_values/multiple_chars.rs - fix_values::multiple_chars::MultipleChars (line 8) ... ok
[INFO] [stdout] test src/fix_values/tz_time.rs - fix_values::tz_time::TzTime (line 10) ... ok
[INFO] [stdout] test src/fix_values/tz.rs - fix_values::tz::Tz (line 15) ... ok
[INFO] [stdout] test src/tagvalue/decoder.rs - tagvalue::decoder::Decoder<C>::decode (line 69) - compile ... FAILED
[INFO] [stdout] test src/tagvalue/config.rs - tagvalue::config::Configure (line 14) ... ok
[INFO] [stdout] test src/tagvalue/config.rs - tagvalue::config::Config::set_verify_checksum (line 113) ... ok
[INFO] [stdout] test src/tagvalue/config.rs - tagvalue::config::Config::set_separator (line 91) ... ok
[INFO] [stdout] test src/session/heartbeat_rule.rs - session::heartbeat_rule::HeartbeatRule::validate (line 52) ... ok
[INFO] [stdout] test src/session/heartbeat_rule.rs - session::heartbeat_rule::HeartbeatRule::validate (line 39) ... ok
[INFO] [stdout] test src/tagvalue/encoder.rs - tagvalue::encoder::Encoder<C>::new (line 43) ... ok
[INFO] [stdout] test src/tagvalue/encoder.rs - tagvalue::encoder::Encoder (line 18) ... ok
[INFO] [stdout] test src/tagvalue/raw_decoder.rs - tagvalue::raw_decoder::RawFrame<T>::as_bytes (line 21) ... ok
[INFO] [stdout] test src/tagvalue/decoder.rs - tagvalue::decoder::Message<'a,T>::fields (line 354) ... ok
[INFO] [stdout] test src/tagvalue/decoder.rs - tagvalue::decoder::Message<'a,T>::len (line 399) ... ok
[INFO] [stdout] test src/tagvalue/raw_decoder.rs - tagvalue::raw_decoder::RawFrame<T>::begin_string (line 41) ... ok
[INFO] [stdout] test src/tagvalue/raw_decoder.rs - tagvalue::raw_decoder::RawFrame<T>::payload (line 67) ... ok
[INFO] [stdout] test src/tagvalue/decoder.rs - tagvalue::decoder::Message<'a,T>::as_bytes (line 379) ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/session/environment.rs - session::environment::Environment::allows_testing (line 24) stdout ----
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/session/environment.rs:29:58
[INFO] [stdout]    |
[INFO] [stdout] 29 | assert_eq!(Environment::Production { allow_test: true }, true);
[INFO] [stdout]    |                                                          ^^^^ expected `Environment`, found `bool`
[INFO] [stdout]    |
[INFO] [stdout] help: try wrapping the expression in `fefix::session::Environment::Production`
[INFO] [stdout]    |
[INFO] [stdout] 29 | assert_eq!(Environment::Production { allow_test: true }, fefix::session::Environment::Production { allow_test: true });
[INFO] [stdout]    |                                                          +++++++++++++++++++++++++++++++++++++++++++++++++++++      +
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/session/environment.rs:30:59
[INFO] [stdout]    |
[INFO] [stdout] 30 | assert_eq!(Environment::Production { allow_test: false }, false);
[INFO] [stdout]    |                                                           ^^^^^ expected `Environment`, found `bool`
[INFO] [stdout]    |
[INFO] [stdout] help: try wrapping the expression in `fefix::session::Environment::Production`
[INFO] [stdout]    |
[INFO] [stdout] 30 | assert_eq!(Environment::Production { allow_test: false }, fefix::session::Environment::Production { allow_test: false });
[INFO] [stdout]    |                                                           +++++++++++++++++++++++++++++++++++++++++++++++++++++       +
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0308`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/tagvalue/decoder.rs - tagvalue::decoder::Decoder<C>::decode (line 69) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `fix44` in this scope
[INFO] [stdout]   --> src/tagvalue/decoder.rs:79:23
[INFO] [stdout]    |
[INFO] [stdout] 79 | assert_eq!(message.fv(fix44::SENDER_COMP_ID), Ok("A"));
[INFO] [stdout]    |                       ^^^^^ use of unresolved module or unlinked crate `fix44`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `fix44`, use `cargo add fix44` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/session/environment.rs - session::environment::Environment::allows_testing (line 24)
[INFO] [stdout]     src/tagvalue/decoder.rs - tagvalue::decoder::Decoder<C>::decode (line 69)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 43 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.54s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "51ea87e603000402792f95b6e37f0e6dd241aaa8f891b3e7360b1a5222f6369d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "51ea87e603000402792f95b6e37f0e6dd241aaa8f891b3e7360b1a5222f6369d", kill_on_drop: false }`
[INFO] [stdout] 51ea87e603000402792f95b6e37f0e6dd241aaa8f891b3e7360b1a5222f6369d
