[INFO] cloning repository https://github.com/QuicSync/QuicServe
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/QuicSync/QuicServe" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FQuicSync%2FQuicServe", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FQuicSync%2FQuicServe'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 18751cfacf4a9b2968db5ea295b35163772fbd71
[INFO] checking QuicSync/QuicServe/18751cfacf4a9b2968db5ea295b35163772fbd71 against master#e22dab387f6b4f6a87dfc54ac2f6013dddb41e68 for pr-136776-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FQuicSync%2FQuicServe" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/QuicSync/QuicServe
[INFO] finished tweaking git repo https://github.com/QuicSync/QuicServe
[INFO] tweaked toml for git repo https://github.com/QuicSync/QuicServe written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/QuicSync/QuicServe on toolchain e22dab387f6b4f6a87dfc54ac2f6013dddb41e68
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e22dab387f6b4f6a87dfc54ac2f6013dddb41e68" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/QuicSync/QuicServe already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e22dab387f6b4f6a87dfc54ac2f6013dddb41e68" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: /workspace/builds/worker-2-tc1/source/Cargo.toml: unused manifest key: profile.release.Ito
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded uniffi_macros v0.29.0
[INFO] [stderr]   Downloaded uuid v1.15.1
[INFO] [stderr]   Downloaded quote v1.0.39
[INFO] [stderr]   Downloaded fs-err v2.11.0
[INFO] [stderr]   Downloaded ring v0.17.13
[INFO] [stderr]   Downloaded unindent v0.2.4
[INFO] [stderr]   Downloaded uniffi_internal_macros v0.29.0
[INFO] [stderr]   Downloaded uniffi v0.29.0
[INFO] [stderr]   Downloaded textwrap v0.16.2
[INFO] [stderr]   Downloaded env_logger v0.11.7
[INFO] [stderr]   Downloaded portable-atomic v1.11.0
[INFO] [stderr]   Downloaded cbindgen v0.28.0
[INFO] [stderr]   Downloaded prost-derive v0.13.5
[INFO] [stderr]   Downloaded tempfile v3.18.0
[INFO] [stderr]   Downloaded predicates v3.1.3
[INFO] [stderr]   Downloaded jiff-static v0.2.4
[INFO] [stderr]   Downloaded clap v4.5.32
[INFO] [stderr]   Downloaded winnow v0.7.3
[INFO] [stderr]   Downloaded goblin v0.8.2
[INFO] [stderr]   Downloaded bstr v1.11.3
[INFO] [stderr]   Downloaded h3-webtransport v0.1.0
[INFO] [stderr]   Downloaded petgraph v0.7.1
[INFO] [stderr]   Downloaded scroll_derive v0.12.0
[INFO] [stderr]   Downloaded prost-types v0.13.5
[INFO] [stderr]   Downloaded pyo3 v0.24.0
[INFO] [stderr]   Downloaded assert_cmd v2.0.16
[INFO] [stderr]   Downloaded rinja_derive v0.3.5
[INFO] [stderr]   Downloaded tokio v1.44.0
[INFO] [stderr]   Downloaded pyo3-build-config v0.24.0
[INFO] [stderr]   Downloaded scroll v0.12.0
[INFO] [stderr]   Downloaded rinja_parser v0.3.5
[INFO] [stderr]   Downloaded prost-build v0.13.5
[INFO] [stderr]   Downloaded uniffi_meta v0.29.0
[INFO] [stderr]   Downloaded uniffi_bindgen v0.29.0
[INFO] [stderr]   Downloaded target-lexicon v0.13.2
[INFO] [stderr]   Downloaded pyo3-macros v0.24.0
[INFO] [stderr]   Downloaded rustls-platform-verifier v0.4.0
[INFO] [stderr]   Downloaded weedle2 v5.0.0
[INFO] [stderr]   Downloaded uniffi_udl v0.29.0
[INFO] [stderr]   Downloaded prost v0.13.5
[INFO] [stderr]   Downloaded rinja v0.3.5
[INFO] [stderr]   Downloaded cargo_metadata v0.15.4
[INFO] [stderr]   Downloaded smawk v0.3.2
[INFO] [stderr]   Downloaded h3 v0.0.6
[INFO] [stderr]   Downloaded once_cell v1.21.0
[INFO] [stderr]   Downloaded uniffi_core v0.29.0
[INFO] [stderr]   Downloaded pyo3-ffi v0.24.0
[INFO] [stderr]   Downloaded h3 v0.0.3
[INFO] [stderr]   Downloaded webpki-root-certs v0.26.8
[INFO] [stderr]   Downloaded pyo3-macros-backend v0.24.0
[INFO] [stderr]   Downloaded prettyplease v0.2.30
[INFO] [stderr]   Downloaded aws-lc-rs v1.12.5
[INFO] [stderr]   Downloaded aws-lc-sys v0.26.0
[INFO] [stderr]   Downloaded jiff v0.2.4
[INFO] [stderr]   Downloaded clap_builder v4.5.32
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+e22dab387f6b4f6a87dfc54ac2f6013dddb41e68" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6b3875b5a42ca4d2fa558fff45e1f373b614eccdef63afb5822f7e41f672c0d4
[INFO] running `Command { std: "docker" "start" "-a" "6b3875b5a42ca4d2fa558fff45e1f373b614eccdef63afb5822f7e41f672c0d4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6b3875b5a42ca4d2fa558fff45e1f373b614eccdef63afb5822f7e41f672c0d4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6b3875b5a42ca4d2fa558fff45e1f373b614eccdef63afb5822f7e41f672c0d4", kill_on_drop: false }`
[INFO] [stdout] 6b3875b5a42ca4d2fa558fff45e1f373b614eccdef63afb5822f7e41f672c0d4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+e22dab387f6b4f6a87dfc54ac2f6013dddb41e68" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 55c45008d9e05529ad92cb5db2b4aac7bb0b2c8b8b1f747c9a7d1a0655624e5b
[INFO] running `Command { std: "docker" "start" "-a" "55c45008d9e05529ad92cb5db2b4aac7bb0b2c8b8b1f747c9a7d1a0655624e5b", kill_on_drop: false }`
[INFO] [stderr] warning: /opt/rustwide/workdir/Cargo.toml: unused manifest key: profile.release.Ito
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling once_cell v1.21.0
[INFO] [stderr]    Compiling target-lexicon v0.13.2
[INFO] [stderr]    Compiling anyhow v1.0.97
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]     Checking bytes v1.10.1
[INFO] [stderr]     Checking pin-project-lite v0.2.16
[INFO] [stderr]    Compiling getrandom v0.3.1
[INFO] [stderr]    Compiling libc v0.2.171
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling quote v1.0.39
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]     Checking log v0.4.26
[INFO] [stderr]    Compiling jobserver v0.1.32
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]     Checking smallvec v1.14.0
[INFO] [stderr]     Checking itoa v1.0.15
[INFO] [stderr]    Compiling aws-lc-rs v1.12.5
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]    Compiling cc v1.2.16
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]     Checking futures-core v0.3.31
[INFO] [stderr]    Compiling zerocopy v0.8.23
[INFO] [stderr]     Checking rustls-pki-types v1.11.0
[INFO] [stderr]     Checking anstyle v1.0.10
[INFO] [stderr]    Compiling anstyle-parse v0.2.6
[INFO] [stderr]     Checking tracing-core v0.1.33
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking socket2 v0.5.8
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking mio v1.0.3
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling rustix v1.0.2
[INFO] [stderr]    Compiling anstyle-query v1.1.2
[INFO] [stderr]     Checking untrusted v0.9.0
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.100
[INFO] [stderr]    Compiling bitflags v2.9.0
[INFO] [stderr]     Checking zeroize v1.8.1
[INFO] [stderr]    Compiling cbindgen v0.28.0
[INFO] [stderr]    Compiling linux-raw-sys v0.9.2
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]    Compiling pyo3-build-config v0.24.0
[INFO] [stderr]    Compiling colorchoice v1.0.3
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.1
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling clap_lex v0.7.4
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]    Compiling winnow v0.7.3
[INFO] [stderr]    Compiling prettyplease v0.2.30
[INFO] [stderr]    Compiling rustls v0.23.23
[INFO] [stderr]     Checking fastrand v2.3.0
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling anstream v0.6.18
[INFO] [stderr]     Checking rustls-pemfile v2.2.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling clap_builder v4.5.32
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]    Compiling fs-err v2.11.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.94
[INFO] [stderr]    Compiling bumpalo v3.17.0
[INFO] [stderr]     Checking openssl-probe v0.1.6
[INFO] [stderr]     Checking futures-task v0.3.31
[INFO] [stderr]     Checking pin-utils v0.1.0
[INFO] [stderr]     Checking hashbrown v0.15.2
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]    Compiling fixedbitset v0.5.7
[INFO] [stderr]    Compiling camino v1.1.9
[INFO] [stderr]     Checking equivalent v1.0.2
[INFO] [stderr]    Compiling cmake v0.1.54
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]    Compiling semver v1.0.26
[INFO] [stderr]     Checking unicode-ident v1.0.18
[INFO] [stderr]     Checking ryu v1.0.20
[INFO] [stderr]     Checking indexmap v2.8.0
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling petgraph v0.7.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking rustls-native-certs v0.7.3
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling quinn-udp v0.5.10
[INFO] [stderr]    Compiling aws-lc-sys v0.26.0
[INFO] [stderr]    Compiling ring v0.17.13
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]    Compiling pyo3-ffi v0.24.0
[INFO] [stderr]    Compiling pyo3-macros-backend v0.24.0
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]    Compiling multimap v0.10.0
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]     Checking tinyvec_macros v0.1.1
[INFO] [stderr]     Checking tinyvec v1.9.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling pyo3 v0.24.0
[INFO] [stderr]    Compiling tempfile v3.18.0
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling clap v4.5.32
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.100
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]    Compiling wasm-bindgen v0.2.100
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]     Checking rustc-hash v2.1.1
[INFO] [stderr]     Checking uniffi_core v0.29.0
[INFO] [stderr]     Checking http v1.2.0
[INFO] [stderr]     Checking heck v0.4.1
[INFO] [stderr]     Checking predicates-core v1.0.9
[INFO] [stderr]    Compiling indoc v2.0.6
[INFO] [stderr]     Checking unindent v0.2.4
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]    Compiling doc-comment v0.3.3
[INFO] [stderr]     Checking uuid v1.15.1
[INFO] [stderr]    Compiling assert_cmd v2.0.16
[INFO] [stderr]     Checking difflib v0.4.0
[INFO] [stderr]     Checking termtree v0.5.1
[INFO] [stderr]     Checking predicates v3.1.3
[INFO] [stderr]     Checking wait-timeout v0.2.1
[INFO] [stderr]     Checking jiff v0.2.4
[INFO] [stderr]     Checking predicates-tree v1.0.12
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.28
[INFO] [stderr]    Compiling prost-derive v0.13.5
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling uniffi_internal_macros v0.29.0
[INFO] [stderr]     Checking tokio v1.44.0
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.100
[INFO] [stderr]    Compiling uniffi_meta v0.29.0
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]     Checking env_filter v0.1.3
[INFO] [stderr]     Checking bstr v1.11.3
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.100
[INFO] [stderr]    Compiling prost v0.13.5
[INFO] [stderr]    Compiling prost-types v0.13.5
[INFO] [stderr]    Compiling pyo3-macros v0.24.0
[INFO] [stderr]    Compiling prost-build v0.13.5
[INFO] [stderr]     Checking env_logger v0.11.7
[INFO] [stderr]     Checking toml_datetime v0.6.8
[INFO] [stderr]    Compiling serde_spanned v0.6.8
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]     Checking toml_edit v0.22.24
[INFO] [stderr]     Checking cargo-platform v0.1.9
[INFO] [stderr]     Checking h3 v0.0.3
[INFO] [stderr]     Checking cargo_metadata v0.15.4
[INFO] [stderr]     Checking h3 v0.0.6
[INFO] [stderr]     Checking tokio-stream v0.1.17
[INFO] [stderr]    Compiling uniffi_macros v0.29.0
[INFO] [stderr]     Checking tokio-test v0.4.4
[INFO] [stderr]    Compiling toml v0.8.20
[INFO] [stderr]     Checking h3-webtransport v0.1.0
[INFO] [stderr]     Checking uniffi v0.29.0
[INFO] [stderr]    Compiling QuicServe v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking rustls-webpki v0.102.8
[INFO] [stderr]     Checking rustls-platform-verifier v0.4.0
[INFO] [stderr]     Checking quinn-proto v0.11.9
[INFO] [stderr]     Checking quinn v0.11.6
[INFO] [stdout] error[E0255]: the name `server` is defined multiple times
[INFO] [stdout]   --> src/lib.rs:33:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | use h3_webtransport::{server, Session};
[INFO] [stdout]    |                       ------ previous import of the module `server` here
[INFO] [stdout] ...
[INFO] [stdout] 33 | pub mod server;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^ `server` redefined here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `server` must be defined only once in the type namespace of this module
[INFO] [stdout] help: you can use `as` to change the binding name of the import
[INFO] [stdout]    |
[INFO] [stdout] 20 | use h3_webtransport::{server as other_server, Session};
[INFO] [stdout]    |                              +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0255]: the name `server` is defined multiple times
[INFO] [stdout]   --> src/lib.rs:33:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | use h3_webtransport::{server, Session};
[INFO] [stdout]    |                       ------ previous import of the module `server` here
[INFO] [stdout] ...
[INFO] [stdout] 33 | pub mod server;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^ `server` redefined here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `server` must be defined only once in the type namespace of this module
[INFO] [stdout] help: you can use `as` to change the binding name of the import
[INFO] [stdout]    |
[INFO] [stdout] 20 | use h3_webtransport::{server as other_server, Session};
[INFO] [stdout]    |                              +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `h3_webtransport::Session`
[INFO] [stdout]   --> src/lib.rs:20:31
[INFO] [stdout]    |
[INFO] [stdout] 20 | use h3_webtransport::{server, Session};
[INFO] [stdout]    |                               ^^^^^^^
[INFO] [stdout]    |                               |
[INFO] [stdout]    |                               no `Session` in the root
[INFO] [stdout]    |                               help: a similar name exists in the module: `SessionId`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this trait instead:
[INFO] [stdout]            quinn::crypto::Session
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `h3_webtransport::client`
[INFO] [stdout]   --> src/client.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use h3_webtransport::client;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^ no `client` in the root
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these modules instead
[INFO] [stdout]    |
[INFO] [stdout] 10 - use h3_webtransport::client;
[INFO] [stdout] 10 + use crate::client;
[INFO] [stdout]    |
[INFO] [stdout] 10 - use h3_webtransport::client;
[INFO] [stdout] 10 + use h3::client;
[INFO] [stdout]    |
[INFO] [stdout] 10 - use h3_webtransport::client;
[INFO] [stdout] 10 + use rustls::client;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `h3_webtransport::session`, `h3_webtransport::Session`
[INFO] [stdout]  --> src/server.rs:9:31
[INFO] [stdout]   |
[INFO] [stdout] 9 | use h3_webtransport::{server, session::AcceptRequest, Session};
[INFO] [stdout]   |                               ^^^^^^^                 ^^^^^^^
[INFO] [stdout]   |                               |                       |
[INFO] [stdout]   |                               |                       no `Session` in the root
[INFO] [stdout]   |                               |                       help: a similar name exists in the module: `SessionId`
[INFO] [stdout]   |                               could not find `session` in `h3_webtransport`
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing one of these items instead:
[INFO] [stdout]           crate::Session
[INFO] [stdout]           quinn::crypto::Session
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `h3_webtransport::Session`
[INFO] [stdout]   --> src/lib.rs:20:31
[INFO] [stdout]    |
[INFO] [stdout] 20 | use h3_webtransport::{server, Session};
[INFO] [stdout]    |                               ^^^^^^^
[INFO] [stdout]    |                               |
[INFO] [stdout]    |                               no `Session` in the root
[INFO] [stdout]    |                               help: a similar name exists in the module: `SessionId`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this trait instead:
[INFO] [stdout]            quinn::crypto::Session
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `h3_webtransport::client`
[INFO] [stdout]   --> src/client.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use h3_webtransport::client;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^ no `client` in the root
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these modules instead
[INFO] [stdout]    |
[INFO] [stdout] 10 - use h3_webtransport::client;
[INFO] [stdout] 10 + use crate::client;
[INFO] [stdout]    |
[INFO] [stdout] 10 - use h3_webtransport::client;
[INFO] [stdout] 10 + use h3::client;
[INFO] [stdout]    |
[INFO] [stdout] 10 - use h3_webtransport::client;
[INFO] [stdout] 10 + use rustls::client;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `h3_webtransport::session`, `h3_webtransport::Session`
[INFO] [stdout]  --> src/server.rs:9:31
[INFO] [stdout]   |
[INFO] [stdout] 9 | use h3_webtransport::{server, session::AcceptRequest, Session};
[INFO] [stdout]   |                               ^^^^^^^                 ^^^^^^^
[INFO] [stdout]   |                               |                       |
[INFO] [stdout]   |                               |                       no `Session` in the root
[INFO] [stdout]   |                               |                       help: a similar name exists in the module: `SessionId`
[INFO] [stdout]   |                               could not find `session` in `h3_webtransport`
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing one of these items instead:
[INFO] [stdout]           crate::Session
[INFO] [stdout]           quinn::crypto::Session
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `h3_webtransport::session`
[INFO] [stdout]  --> src/transport.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use h3_webtransport::session::SendStream;
[INFO] [stdout]   |                      ^^^^^^^ could not find `session` in `h3_webtransport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `h3_webtransport::session`
[INFO] [stdout]  --> src/transport.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use h3_webtransport::session::SendStream;
[INFO] [stdout]   |                      ^^^^^^^ could not find `session` in `h3_webtransport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `rustls::Certificate`
[INFO] [stdout]   --> src/utils.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rustls::Certificate;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^ no `Certificate` in the root
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these variants instead
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rustls::HandshakeType::Certificate;
[INFO] [stdout]    |             +++++++++++++++
[INFO] [stdout] 10 | use rustls::pki_types::pem::SectionKind::Certificate;
[INFO] [stdout]    |             +++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `rustls::Certificate`
[INFO] [stdout]   --> src/utils.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rustls::Certificate;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^ no `Certificate` in the root
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these variants instead
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rustls::HandshakeType::Certificate;
[INFO] [stdout]    |             +++++++++++++++
[INFO] [stdout] 10 | use rustls::pki_types::pem::SectionKind::Certificate;
[INFO] [stdout]    |             +++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `transport::Transport`
[INFO] [stdout]   --> src/lib.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub use transport::Transport;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^ no `Transport` in `transport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `async_trait`
[INFO] [stdout]   --> src/lib.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use async_trait::async_trait;
[INFO] [stdout]    |     ^^^^^^^^^^^ use of unresolved module or unlinked crate `async_trait`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `async_trait`, use `cargo add async_trait` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `futures_util`
[INFO] [stdout]  --> src/client.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use futures_util::{SinkExt, StreamExt};
[INFO] [stdout]   |     ^^^^^^^^^^^^ use of unresolved module or unlinked crate `futures_util`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `futures_util`, use `cargo add futures_util` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `futures_util`
[INFO] [stdout]  --> src/server.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures_util::{SinkExt, StreamExt};
[INFO] [stdout]   |     ^^^^^^^^^^^^ use of unresolved module or unlinked crate `futures_util`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `futures_util`, use `cargo add futures_util` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tokio_util`
[INFO] [stdout]  --> src/transport.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio_util::codec::{Decoder, Encoder, Framed, LengthDelimitedCodec};
[INFO] [stdout]   |     ^^^^^^^^^^ use of unresolved module or unlinked crate `tokio_util`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tokio_util`, use `cargo add tokio_util` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `transport::Transport`
[INFO] [stdout]   --> src/lib.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub use transport::Transport;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^ no `Transport` in `transport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `async_trait`
[INFO] [stdout]   --> src/lib.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use async_trait::async_trait;
[INFO] [stdout]    |     ^^^^^^^^^^^ use of unresolved module or unlinked crate `async_trait`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `async_trait`, use `cargo add async_trait` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `futures_util`
[INFO] [stdout]  --> src/client.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use futures_util::{SinkExt, StreamExt};
[INFO] [stdout]   |     ^^^^^^^^^^^^ use of unresolved module or unlinked crate `futures_util`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `futures_util`, use `cargo add futures_util` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `futures_util`
[INFO] [stdout]  --> src/server.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures_util::{SinkExt, StreamExt};
[INFO] [stdout]   |     ^^^^^^^^^^^^ use of unresolved module or unlinked crate `futures_util`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `futures_util`, use `cargo add futures_util` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tokio_util`
[INFO] [stdout]  --> src/transport.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio_util::codec::{Decoder, Encoder, Framed, LengthDelimitedCodec};
[INFO] [stdout]   |     ^^^^^^^^^^ use of unresolved module or unlinked crate `tokio_util`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tokio_util`, use `cargo add tokio_util` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `futures_util`
[INFO] [stdout]  --> src/utils.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures_util::future::Future;
[INFO] [stdout]   |     ^^^^^^^^^^^^ use of unresolved module or unlinked crate `futures_util`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `futures_util`, use `cargo add futures_util` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `futures_util`
[INFO] [stdout]  --> src/transport.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures_util::{SinkExt, StreamExt};
[INFO] [stdout]   |     ^^^^^^^^^^^^ use of unresolved module or unlinked crate `futures_util`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `futures_util`, use `cargo add futures_util` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `rand`
[INFO] [stdout]    --> src/utils.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 172 |     use rand::Rng;
[INFO] [stdout]     |         ^^^^ function `rand` is not a crate or module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `futures_util`
[INFO] [stdout]  --> src/utils.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures_util::future::Future;
[INFO] [stdout]   |     ^^^^^^^^^^^^ use of unresolved module or unlinked crate `futures_util`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `futures_util`, use `cargo add futures_util` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `futures_util`
[INFO] [stdout]  --> src/transport.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures_util::{SinkExt, StreamExt};
[INFO] [stdout]   |     ^^^^^^^^^^^^ use of unresolved module or unlinked crate `futures_util`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `futures_util`, use `cargo add futures_util` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `rand`
[INFO] [stdout]    --> src/utils.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 172 |     use rand::Rng;
[INFO] [stdout]     |         ^^^^ function `rand` is not a crate or module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `session` in `h3_webtransport`
[INFO] [stdout]   --> src/transport.rs:12:37
[INFO] [stdout]    |
[INFO] [stdout] 12 |     framed: Framed<h3_webtransport::session::BidiStream, LengthDelimitedCodec>,
[INFO] [stdout]    |                                     ^^^^^^^ could not find `session` in `h3_webtransport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `session` in `h3_webtransport`
[INFO] [stdout]   --> src/transport.rs:17:41
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub fn new(stream: h3_webtransport::session::BidiStream) -> Self {
[INFO] [stdout]    |                                         ^^^^^^^ could not find `session` in `h3_webtransport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `session` in `h3_webtransport`
[INFO] [stdout]    --> src/utils.rs:103:63
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub async fn check_stream_alive(stream: &mut h3_webtransport::session::BidiStream) -> bool {
[INFO] [stdout]     |                                                               ^^^^^^^ could not find `session` in `h3_webtransport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `Certificate` in crate `rustls`
[INFO] [stdout]   --> src/config.rs:83:32
[INFO] [stdout]    |
[INFO] [stdout] 83 |             let cert = rustls::Certificate(ca_cert);
[INFO] [stdout]    |                                ^^^^^^^^^^^ not found in `rustls`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these unit variants
[INFO] [stdout]    |
[INFO] [stdout]  1 + use rustls::HandshakeType::Certificate;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use rustls::pki_types::pem::SectionKind::Certificate;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Certificate`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 83 -             let cert = rustls::Certificate(ca_cert);
[INFO] [stdout] 83 +             let cert = Certificate(ca_cert);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Arc`
[INFO] [stdout]   --> src/config.rs:99:38
[INFO] [stdout]    |
[INFO] [stdout] 99 |             quinn::ClientConfig::new(Arc::new(crypto))
[INFO] [stdout]    |                                      ^^^ use of undeclared type `Arc`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::Arc;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use std::sync::Arc;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Arc`
[INFO] [stdout]    --> src/config.rs:119:40
[INFO] [stdout]     |
[INFO] [stdout] 119 |         client_config.transport_config(Arc::new(transport_config));
[INFO] [stdout]     |                                        ^^^ use of undeclared type `Arc`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::Arc;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::sync::Arc;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `Certificate` in crate `rustls`
[INFO] [stdout]    --> src/config.rs:145:30
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 .map(rustls::Certificate)
[INFO] [stdout]     |                              ^^^^^^^^^^^ not found in `rustls`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these unit variants
[INFO] [stdout]     |
[INFO] [stdout]   1 + use rustls::HandshakeType::Certificate;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use rustls::pki_types::pem::SectionKind::Certificate;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `Certificate`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 145 -                 .map(rustls::Certificate)
[INFO] [stdout] 145 +                 .map(Certificate)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `PrivateKey` in crate `rustls`
[INFO] [stdout]    --> src/config.rs:147:21
[INFO] [stdout]     |
[INFO] [stdout] 147 |             rustls::PrivateKey(
[INFO] [stdout]     |                     ^^^^^^^^^^ not found in `rustls`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this unit variant
[INFO] [stdout]     |
[INFO] [stdout]   1 + use rustls::pki_types::pem::SectionKind::PrivateKey;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `PrivateKey`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 147 -             rustls::PrivateKey(
[INFO] [stdout] 147 +             PrivateKey(
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Arc`
[INFO] [stdout]    --> src/config.rs:173:40
[INFO] [stdout]     |
[INFO] [stdout] 173 |         server_config.transport_config(Arc::new(transport_config));
[INFO] [stdout]     |                                        ^^^ use of undeclared type `Arc`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::Arc;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::sync::Arc;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Builder` in `server`
[INFO] [stdout]    --> src/server.rs:100:36
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let mut acceptor = server::Builder::new()
[INFO] [stdout]     |                                    ^^^^^^^ could not find `Builder` in `server`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::thread::Builder;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use cbindgen::Builder;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use env_logger::Builder;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use h3::client::Builder;
[INFO] [stdout]     |
[INFO] [stdout]     = and 4 other candidates
[INFO] [stdout] help: if you import `Builder`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 100 -         let mut acceptor = server::Builder::new()
[INFO] [stdout] 100 +         let mut acceptor = Builder::new()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct `Connection` is private
[INFO] [stdout]    --> src/server.rs:146:30
[INFO] [stdout]     |
[INFO] [stdout] 146 |     session: Session<server::Connection>,
[INFO] [stdout]     |                              ^^^^^^^^^^ private struct
[INFO] [stdout]     |
[INFO] [stdout] note: the struct `Connection` is defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h3-webtransport-0.1.0/src/server.rs:19:20
[INFO] [stdout]     |
[INFO] [stdout]  19 |     server::{self, Connection, RequestStream},
[INFO] [stdout]     |                    ^^^^^^^^^^
[INFO] [stdout] help: import `Connection` directly
[INFO] [stdout]     |
[INFO] [stdout] 146 |     session: Session<h3::server::Connection>,
[INFO] [stdout]     |                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/lib.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::collections::HashMap;
[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: `std::future::Future`
[INFO] [stdout]   --> src/lib.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::future::Future;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::marker::PhantomData`
[INFO] [stdout]   --> src/lib.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::marker::PhantomData;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::pin::Pin`
[INFO] [stdout]   --> src/lib.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::pin::Pin;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]   --> src/lib.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::sync::{Arc, Mutex};
[INFO] [stdout]    |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> src/lib.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Context`
[INFO] [stdout]   --> src/lib.rs:16:14
[INFO] [stdout]    |
[INFO] [stdout] 16 | use anyhow::{Context, Result};
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufMut` and `Buf`
[INFO] [stdout]   --> src/lib.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 | use bytes::{Buf, BufMut, Bytes, BytesMut};
[INFO] [stdout]    |             ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `h3::quic::Connection`
[INFO] [stdout]   --> src/lib.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use h3::quic::Connection;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `server`
[INFO] [stdout]   --> src/lib.rs:20:23
[INFO] [stdout]    |
[INFO] [stdout] 20 | use h3_webtransport::{server, Session};
[INFO] [stdout]    |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug`, `error`, and `info`
[INFO] [stdout]   --> src/lib.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | use log::{debug, error, info, warn};
[INFO] [stdout]    |           ^^^^^  ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientConfig`, `Endpoint`, `ServerConfig`, and `TransportConfig`
[INFO] [stdout]   --> src/lib.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 | use quinn::{ClientConfig, Endpoint, ServerConfig, TransportConfig};
[INFO] [stdout]    |             ^^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error`
[INFO] [stdout]   --> src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use thiserror::Error;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RwLock`, `mpsc`, and `oneshot`
[INFO] [stdout]   --> src/lib.rs:26:19
[INFO] [stdout]    |
[INFO] [stdout] 26 | use tokio::sync::{mpsc, oneshot, RwLock};
[INFO] [stdout]    |                   ^^^^  ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::time`
[INFO] [stdout]   --> src/lib.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use tokio::time;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> src/client.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufMut` and `BytesMut`
[INFO] [stdout]  --> src/client.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | use bytes::{Buf, BufMut, Bytes, BytesMut};
[INFO] [stdout]   |                  ^^^^^^         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]   --> src/client.rs:11:31
[INFO] [stdout]    |
[INFO] [stdout] 11 | use log::{debug, error, info, warn};
[INFO] [stdout]    |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ClientConfig`
[INFO] [stdout]   --> src/client.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 | use quinn::{ClientConfig, Endpoint};
[INFO] [stdout]    |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RwLock` and `mpsc`
[INFO] [stdout]   --> src/client.rs:13:19
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tokio::sync::{mpsc, Mutex, RwLock, oneshot};
[INFO] [stdout]    |                   ^^^^         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WEBTRANSPORT_PROTOCOL`
[INFO] [stdout]   --> src/client.rs:15:62
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::{config::Config, error::Error, Request, Response, WEBTRANSPORT_PROTOCOL};
[INFO] [stdout]    |                                                              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> src/server.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufMut`, `Buf`, `BytesMut`, and `Bytes`
[INFO] [stdout]  --> src/server.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use bytes::{Buf, BufMut, Bytes, BytesMut};
[INFO] [stdout]   |             ^^^  ^^^^^^  ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]   --> src/server.rs:10:31
[INFO] [stdout]    |
[INFO] [stdout] 10 | use log::{debug, error, info, warn};
[INFO] [stdout]    |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ServerConfig`
[INFO] [stdout]   --> src/server.rs:11:23
[INFO] [stdout]    |
[INFO] [stdout] 11 | use quinn::{Endpoint, ServerConfig};
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]   --> src/server.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tokio::sync::{Mutex, RwLock};
[INFO] [stdout]    |                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Buf`
[INFO] [stdout]  --> src/transport.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bytes::{Buf, BufMut, Bytes, BytesMut};
[INFO] [stdout]   |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncRead` and `AsyncWrite`
[INFO] [stdout]  --> src/transport.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio::io::{AsyncRead, AsyncWrite};
[INFO] [stdout]   |                 ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc::rand`
[INFO] [stdout]  --> src/utils.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use libc::rand;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `error`, `info`, and `warn`
[INFO] [stdout]  --> src/utils.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | use log::{debug, error, info, warn};
[INFO] [stdout]   |                  ^^^^^  ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `session` in `h3_webtransport`
[INFO] [stdout]   --> src/transport.rs:12:37
[INFO] [stdout]    |
[INFO] [stdout] 12 |     framed: Framed<h3_webtransport::session::BidiStream, LengthDelimitedCodec>,
[INFO] [stdout]    |                                     ^^^^^^^ could not find `session` in `h3_webtransport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `session` in `h3_webtransport`
[INFO] [stdout]   --> src/transport.rs:17:41
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub fn new(stream: h3_webtransport::session::BidiStream) -> Self {
[INFO] [stdout]    |                                         ^^^^^^^ could not find `session` in `h3_webtransport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `session` in `h3_webtransport`
[INFO] [stdout]    --> src/utils.rs:103:63
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub async fn check_stream_alive(stream: &mut h3_webtransport::session::BidiStream) -> bool {
[INFO] [stdout]     |                                                               ^^^^^^^ could not find `session` in `h3_webtransport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `Certificate` in crate `rustls`
[INFO] [stdout]   --> src/config.rs:83:32
[INFO] [stdout]    |
[INFO] [stdout] 83 |             let cert = rustls::Certificate(ca_cert);
[INFO] [stdout]    |                                ^^^^^^^^^^^ not found in `rustls`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these unit variants
[INFO] [stdout]    |
[INFO] [stdout]  1 + use rustls::HandshakeType::Certificate;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use rustls::pki_types::pem::SectionKind::Certificate;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Certificate`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 83 -             let cert = rustls::Certificate(ca_cert);
[INFO] [stdout] 83 +             let cert = Certificate(ca_cert);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Arc`
[INFO] [stdout]   --> src/config.rs:99:38
[INFO] [stdout]    |
[INFO] [stdout] 99 |             quinn::ClientConfig::new(Arc::new(crypto))
[INFO] [stdout]    |                                      ^^^ use of undeclared type `Arc`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::Arc;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use std::sync::Arc;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Arc`
[INFO] [stdout]    --> src/config.rs:119:40
[INFO] [stdout]     |
[INFO] [stdout] 119 |         client_config.transport_config(Arc::new(transport_config));
[INFO] [stdout]     |                                        ^^^ use of undeclared type `Arc`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::Arc;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::sync::Arc;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `Certificate` in crate `rustls`
[INFO] [stdout]    --> src/config.rs:145:30
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 .map(rustls::Certificate)
[INFO] [stdout]     |                              ^^^^^^^^^^^ not found in `rustls`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these unit variants
[INFO] [stdout]     |
[INFO] [stdout]   1 + use rustls::HandshakeType::Certificate;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use rustls::pki_types::pem::SectionKind::Certificate;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `Certificate`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 145 -                 .map(rustls::Certificate)
[INFO] [stdout] 145 +                 .map(Certificate)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `PrivateKey` in crate `rustls`
[INFO] [stdout]    --> src/config.rs:147:21
[INFO] [stdout]     |
[INFO] [stdout] 147 |             rustls::PrivateKey(
[INFO] [stdout]     |                     ^^^^^^^^^^ not found in `rustls`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this unit variant
[INFO] [stdout]     |
[INFO] [stdout]   1 + use rustls::pki_types::pem::SectionKind::PrivateKey;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `PrivateKey`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 147 -             rustls::PrivateKey(
[INFO] [stdout] 147 +             PrivateKey(
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Arc`
[INFO] [stdout]    --> src/config.rs:173:40
[INFO] [stdout]     |
[INFO] [stdout] 173 |         server_config.transport_config(Arc::new(transport_config));
[INFO] [stdout]     |                                        ^^^ use of undeclared type `Arc`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::Arc;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::sync::Arc;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Builder` in `server`
[INFO] [stdout]    --> src/server.rs:100:36
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let mut acceptor = server::Builder::new()
[INFO] [stdout]     |                                    ^^^^^^^ could not find `Builder` in `server`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::thread::Builder;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use cbindgen::Builder;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use h3::client::Builder;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use h3::server::Builder;
[INFO] [stdout]     |
[INFO] [stdout]     = and 2 other candidates
[INFO] [stdout] help: if you import `Builder`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 100 -         let mut acceptor = server::Builder::new()
[INFO] [stdout] 100 +         let mut acceptor = Builder::new()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct `Connection` is private
[INFO] [stdout]    --> src/server.rs:146:30
[INFO] [stdout]     |
[INFO] [stdout] 146 |     session: Session<server::Connection>,
[INFO] [stdout]     |                              ^^^^^^^^^^ private struct
[INFO] [stdout]     |
[INFO] [stdout] note: the struct `Connection` is defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h3-webtransport-0.1.0/src/server.rs:19:20
[INFO] [stdout]     |
[INFO] [stdout]  19 |     server::{self, Connection, RequestStream},
[INFO] [stdout]     |                    ^^^^^^^^^^
[INFO] [stdout] help: import `Connection` directly
[INFO] [stdout]     |
[INFO] [stdout] 146 |     session: Session<h3::server::Connection>,
[INFO] [stdout]     |                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/lib.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::collections::HashMap;
[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: `std::future::Future`
[INFO] [stdout]   --> src/lib.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::future::Future;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::marker::PhantomData`
[INFO] [stdout]   --> src/lib.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::marker::PhantomData;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::pin::Pin`
[INFO] [stdout]   --> src/lib.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::pin::Pin;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]   --> src/lib.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::sync::{Arc, Mutex};
[INFO] [stdout]    |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> src/lib.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Context`
[INFO] [stdout]   --> src/lib.rs:16:14
[INFO] [stdout]    |
[INFO] [stdout] 16 | use anyhow::{Context, Result};
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufMut` and `Buf`
[INFO] [stdout]   --> src/lib.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 | use bytes::{Buf, BufMut, Bytes, BytesMut};
[INFO] [stdout]    |             ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `h3::quic::Connection`
[INFO] [stdout]   --> src/lib.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use h3::quic::Connection;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `server`
[INFO] [stdout]   --> src/lib.rs:20:23
[INFO] [stdout]    |
[INFO] [stdout] 20 | use h3_webtransport::{server, Session};
[INFO] [stdout]    |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug`, `error`, and `info`
[INFO] [stdout]   --> src/lib.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | use log::{debug, error, info, warn};
[INFO] [stdout]    |           ^^^^^  ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientConfig`, `Endpoint`, `ServerConfig`, and `TransportConfig`
[INFO] [stdout]   --> src/lib.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 | use quinn::{ClientConfig, Endpoint, ServerConfig, TransportConfig};
[INFO] [stdout]    |             ^^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error`
[INFO] [stdout]   --> src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use thiserror::Error;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RwLock`, `mpsc`, and `oneshot`
[INFO] [stdout]   --> src/lib.rs:26:19
[INFO] [stdout]    |
[INFO] [stdout] 26 | use tokio::sync::{mpsc, oneshot, RwLock};
[INFO] [stdout]    |                   ^^^^  ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::time`
[INFO] [stdout]   --> src/lib.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use tokio::time;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> src/client.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufMut` and `BytesMut`
[INFO] [stdout]  --> src/client.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | use bytes::{Buf, BufMut, Bytes, BytesMut};
[INFO] [stdout]   |                  ^^^^^^         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]   --> src/client.rs:11:31
[INFO] [stdout]    |
[INFO] [stdout] 11 | use log::{debug, error, info, warn};
[INFO] [stdout]    |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ClientConfig`
[INFO] [stdout]   --> src/client.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 | use quinn::{ClientConfig, Endpoint};
[INFO] [stdout]    |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RwLock` and `mpsc`
[INFO] [stdout]   --> src/client.rs:13:19
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tokio::sync::{mpsc, Mutex, RwLock, oneshot};
[INFO] [stdout]    |                   ^^^^         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WEBTRANSPORT_PROTOCOL`
[INFO] [stdout]   --> src/client.rs:15:62
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::{config::Config, error::Error, Request, Response, WEBTRANSPORT_PROTOCOL};
[INFO] [stdout]    |                                                              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> src/server.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufMut`, `Buf`, `BytesMut`, and `Bytes`
[INFO] [stdout]  --> src/server.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use bytes::{Buf, BufMut, Bytes, BytesMut};
[INFO] [stdout]   |             ^^^  ^^^^^^  ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]   --> src/server.rs:10:31
[INFO] [stdout]    |
[INFO] [stdout] 10 | use log::{debug, error, info, warn};
[INFO] [stdout]    |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ServerConfig`
[INFO] [stdout]   --> src/server.rs:11:23
[INFO] [stdout]    |
[INFO] [stdout] 11 | use quinn::{Endpoint, ServerConfig};
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]   --> src/server.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tokio::sync::{Mutex, RwLock};
[INFO] [stdout]    |                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Buf`
[INFO] [stdout]  --> src/transport.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bytes::{Buf, BufMut, Bytes, BytesMut};
[INFO] [stdout]   |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncRead` and `AsyncWrite`
[INFO] [stdout]  --> src/transport.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio::io::{AsyncRead, AsyncWrite};
[INFO] [stdout]   |                 ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc::rand`
[INFO] [stdout]  --> src/utils.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use libc::rand;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `error`, `info`, and `warn`
[INFO] [stdout]  --> src/utils.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | use log::{debug, error, info, warn};
[INFO] [stdout]   |                  ^^^^^  ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> src/transport.rs:75:63
[INFO] [stdout]    |
[INFO] [stdout] 75 |     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout]    |                                                               ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<ProtobufCodec<T> as IntoAsyncIterator>::Item>, Self::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<ProtobufCodec<T> as IntoIterator>::Item>, Self::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<ProtobufCodec<T> as rayon::iter::IntoParallelIterator>::Item>, Self::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<ProtobufCodec<T> as rayon::iter::IntoParallelRefIterator>::Item>, Self::Error> {
[INFO] [stdout]    |
[INFO] [stdout]    = and 1 other candidate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> src/transport.rs:75:76
[INFO] [stdout]    |
[INFO] [stdout] 75 |     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout]    |                                                                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <ProtobufCodec<T> as TryFrom>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <ProtobufCodec<T> as TryInto>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <ProtobufCodec<T> as futures_core::future::TryFuture>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <ProtobufCodec<T> as futures_core::stream::TryStream>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> src/transport.rs:97:69
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout]    |                                                                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]    |
[INFO] [stdout] 97 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 97 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <ProtobufCodec<T> as TryFrom>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 97 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 97 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <ProtobufCodec<T> as TryInto>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 97 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 97 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <ProtobufCodec<T> as futures_core::future::TryFuture>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 97 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 97 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <ProtobufCodec<T> as futures_core::stream::TryStream>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/transport.rs:136:63
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout]     |                                                               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<JsonCodec<T> as IntoAsyncIterator>::Item>, Self::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<JsonCodec<T> as IntoIterator>::Item>, Self::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<JsonCodec<T> as rayon::iter::IntoParallelIterator>::Item>, Self::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<JsonCodec<T> as rayon::iter::IntoParallelRefIterator>::Item>, Self::Error> {
[INFO] [stdout]     |
[INFO] [stdout]     = and 1 other candidate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/transport.rs:136:76
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout]     |                                                                            ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <JsonCodec<T> as TryFrom>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <JsonCodec<T> as TryInto>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <JsonCodec<T> as futures_core::future::TryFuture>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <JsonCodec<T> as futures_core::stream::TryStream>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/transport.rs:158:69
[INFO] [stdout]     |
[INFO] [stdout] 158 |     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 158 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 158 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <JsonCodec<T> as TryFrom>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 158 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 158 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <JsonCodec<T> as TryInto>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 158 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 158 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <JsonCodec<T> as futures_core::future::TryFuture>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 158 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 158 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <JsonCodec<T> as futures_core::stream::TryStream>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> src/transport.rs:75:63
[INFO] [stdout]    |
[INFO] [stdout] 75 |     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout]    |                                                               ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<ProtobufCodec<T> as IntoAsyncIterator>::Item>, Self::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<ProtobufCodec<T> as IntoIterator>::Item>, Self::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<ProtobufCodec<T> as rayon::iter::IntoParallelIterator>::Item>, Self::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<ProtobufCodec<T> as rayon::iter::IntoParallelRefIterator>::Item>, Self::Error> {
[INFO] [stdout]    |
[INFO] [stdout]    = and 1 other candidate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> src/transport.rs:75:76
[INFO] [stdout]    |
[INFO] [stdout] 75 |     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout]    |                                                                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <ProtobufCodec<T> as TryFrom>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <ProtobufCodec<T> as TryInto>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <ProtobufCodec<T> as futures_core::future::TryFuture>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 75 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 75 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <ProtobufCodec<T> as futures_core::stream::TryStream>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> src/transport.rs:97:69
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout]    |                                                                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]    |
[INFO] [stdout] 97 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 97 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <ProtobufCodec<T> as TryFrom>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 97 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 97 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <ProtobufCodec<T> as TryInto>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 97 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 97 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <ProtobufCodec<T> as futures_core::future::TryFuture>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 97 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 97 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <ProtobufCodec<T> as futures_core::stream::TryStream>::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/transport.rs:136:63
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout]     |                                                               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<JsonCodec<T> as IntoAsyncIterator>::Item>, Self::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<JsonCodec<T> as IntoIterator>::Item>, Self::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<JsonCodec<T> as rayon::iter::IntoParallelIterator>::Item>, Self::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<<JsonCodec<T> as rayon::iter::IntoParallelRefIterator>::Item>, Self::Error> {
[INFO] [stdout]     |
[INFO] [stdout]     = and 1 other candidate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/transport.rs:136:76
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout]     |                                                                            ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <JsonCodec<T> as TryFrom>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <JsonCodec<T> as TryInto>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <JsonCodec<T> as futures_core::future::TryFuture>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 136 -     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] 136 +     fn decode(&mut self, src: &mut BytesMut) -> Result<Option<Self::Item>, <JsonCodec<T> as futures_core::stream::TryStream>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/transport.rs:158:69
[INFO] [stdout]     |
[INFO] [stdout] 158 |     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 158 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 158 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <JsonCodec<T> as TryFrom>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 158 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 158 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <JsonCodec<T> as TryInto>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 158 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 158 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <JsonCodec<T> as futures_core::future::TryFuture>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 158 -     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), Self::Error> {
[INFO] [stdout] 158 +     fn encode(&mut self, item: T, dst: &mut BytesMut) -> Result<(), <JsonCodec<T> as futures_core::stream::TryStream>::Error> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `From<serde_json::Error>` for type `error::Error`
[INFO] [stdout]   --> src/error.rs:23:21
[INFO] [stdout]    |
[INFO] [stdout] 20 |     Serialization(#[from] serde_json::Error),
[INFO] [stdout]    |                   ------- first implementation here
[INFO] [stdout] ...
[INFO] [stdout] 23 |     Deserialization(#[from] serde_json::Error),
[INFO] [stdout]    |                     ^^^^^^^ conflicting implementation for `error::Error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Service` is not dyn compatible
[INFO] [stdout]   --> src/server.rs:24:46
[INFO] [stdout]    |
[INFO] [stdout] 24 |     services: Arc<RwLock<HashMap<String, Arc<dyn Service>>>>,
[INFO] [stdout]    |                                              ^^^^^^^^^^^ `Service` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> src/lib.rs:54:14
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub trait Service: Send + Sync + 'static {
[INFO] [stdout]    |           ------- this trait is not dyn compatible...
[INFO] [stdout] 53 |     /// Executes a method on the service
[INFO] [stdout] 54 |     async fn call(&self, method: &str, payload: Bytes) -> Result<Bytes, Error>;
[INFO] [stdout]    |              ^^^^ ...because method `call` is `async`
[INFO] [stdout]    = help: consider moving `call` to another trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `From<serde_json::Error>` for type `error::Error`
[INFO] [stdout]   --> src/error.rs:23:21
[INFO] [stdout]    |
[INFO] [stdout] 20 |     Serialization(#[from] serde_json::Error),
[INFO] [stdout]    |                   ------- first implementation here
[INFO] [stdout] ...
[INFO] [stdout] 23 |     Deserialization(#[from] serde_json::Error),
[INFO] [stdout]    |                     ^^^^^^^ conflicting implementation for `error::Error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Service` is not dyn compatible
[INFO] [stdout]    --> src/server.rs:147:46
[INFO] [stdout]     |
[INFO] [stdout] 147 |     services: Arc<RwLock<HashMap<String, Arc<dyn Service>>>>,
[INFO] [stdout]     |                                              ^^^^^^^^^^^ `Service` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> src/lib.rs:54:14
[INFO] [stdout]     |
[INFO] [stdout]  52 | pub trait Service: Send + Sync + 'static {
[INFO] [stdout]     |           ------- this trait is not dyn compatible...
[INFO] [stdout]  53 |     /// Executes a method on the service
[INFO] [stdout]  54 |     async fn call(&self, method: &str, payload: Bytes) -> Result<Bytes, Error>;
[INFO] [stdout]     |              ^^^^ ...because method `call` is `async`
[INFO] [stdout]     = help: consider moving `call` to another trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Service` is not dyn compatible
[INFO] [stdout]   --> src/server.rs:24:46
[INFO] [stdout]    |
[INFO] [stdout] 24 |     services: Arc<RwLock<HashMap<String, Arc<dyn Service>>>>,
[INFO] [stdout]    |                                              ^^^^^^^^^^^ `Service` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> src/lib.rs:54:14
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub trait Service: Send + Sync + 'static {
[INFO] [stdout]    |           ------- this trait is not dyn compatible...
[INFO] [stdout] 53 |     /// Executes a method on the service
[INFO] [stdout] 54 |     async fn call(&self, method: &str, payload: Bytes) -> Result<Bytes, Error>;
[INFO] [stdout]    |              ^^^^ ...because method `call` is `async`
[INFO] [stdout]    = help: consider moving `call` to another trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Service` is not dyn compatible
[INFO] [stdout]    --> src/server.rs:147:46
[INFO] [stdout]     |
[INFO] [stdout] 147 |     services: Arc<RwLock<HashMap<String, Arc<dyn Service>>>>,
[INFO] [stdout]     |                                              ^^^^^^^^^^^ `Service` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> src/lib.rs:54:14
[INFO] [stdout]     |
[INFO] [stdout]  52 | pub trait Service: Send + Sync + 'static {
[INFO] [stdout]     |           ------- this trait is not dyn compatible...
[INFO] [stdout]  53 |     /// Executes a method on the service
[INFO] [stdout]  54 |     async fn call(&self, method: &str, payload: Bytes) -> Result<Bytes, Error>;
[INFO] [stdout]     |              ^^^^ ...because method `call` is `async`
[INFO] [stdout]     = help: consider moving `call` to another trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rustls_pemfile`
[INFO] [stdout]    --> src/config.rs:142:13
[INFO] [stdout]     |
[INFO] [stdout] 142 |             rustls_pemfile::certs(&mut cert_chain.as_slice())
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rustls_pemfile`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `rustls_pemfile`, use `cargo add rustls_pemfile` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rustls_pemfile`
[INFO] [stdout]    --> src/config.rs:148:17
[INFO] [stdout]     |
[INFO] [stdout] 148 |                 rustls_pemfile::pkcs8_private_keys(&mut key_bytes.as_slice())
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rustls_pemfile`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `rustls_pemfile`, use `cargo add rustls_pemfile` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rustls_pemfile`
[INFO] [stdout]   --> src/utils.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     rustls_pemfile::certs(&mut cert_data.as_ref())
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rustls_pemfile`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `rustls_pemfile`, use `cargo add rustls_pemfile` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: function `rand` is not a crate or module
[INFO] [stdout]   --> src/utils.rs:74:44
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 let jitter_factor = 0.8 + (rand::random::<f64>() * 0.4);
[INFO] [stdout]    |                                            ^^^^ function `rand` is not a crate or module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `env_logger`
[INFO] [stdout]    --> src/utils.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     env_logger::init();
[INFO] [stdout]     |     ^^^^^^^^^^ use of unresolved module or unlinked crate `env_logger`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `env_logger`, use `cargo add env_logger` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `local_ip_address`
[INFO] [stdout]    --> src/utils.rs:164:11
[INFO] [stdout]     |
[INFO] [stdout] 164 |     match local_ip_address::local_ip() {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `local_ip_address`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `local_ip_address`, use `cargo add local_ip_address` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: function `rand` is not a crate or module
[INFO] [stdout]    --> src/utils.rs:173:5
[INFO] [stdout]     |
[INFO] [stdout] 173 |     rand::random::<u64>()
[INFO] [stdout]     |     ^^^^ function `rand` is not a crate or module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0038, E0119, E0223, E0255, E0425, E0432, E0433, E0603.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0038`.
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rustls_pemfile`
[INFO] [stdout]    --> src/config.rs:142:13
[INFO] [stdout]     |
[INFO] [stdout] 142 |             rustls_pemfile::certs(&mut cert_chain.as_slice())
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rustls_pemfile`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `rustls_pemfile`, use `cargo add rustls_pemfile` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rustls_pemfile`
[INFO] [stdout]    --> src/config.rs:148:17
[INFO] [stdout]     |
[INFO] [stdout] 148 |                 rustls_pemfile::pkcs8_private_keys(&mut key_bytes.as_slice())
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rustls_pemfile`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `rustls_pemfile`, use `cargo add rustls_pemfile` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rustls_pemfile`
[INFO] [stdout]   --> src/utils.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     rustls_pemfile::certs(&mut cert_data.as_ref())
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rustls_pemfile`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `rustls_pemfile`, use `cargo add rustls_pemfile` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: function `rand` is not a crate or module
[INFO] [stdout]   --> src/utils.rs:74:44
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 let jitter_factor = 0.8 + (rand::random::<f64>() * 0.4);
[INFO] [stdout]    |                                            ^^^^ function `rand` is not a crate or module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `local_ip_address`
[INFO] [stdout]    --> src/utils.rs:164:11
[INFO] [stdout]     |
[INFO] [stdout] 164 |     match local_ip_address::local_ip() {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `local_ip_address`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `local_ip_address`, use `cargo add local_ip_address` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: function `rand` is not a crate or module
[INFO] [stdout]    --> src/utils.rs:173:5
[INFO] [stdout]     |
[INFO] [stdout] 173 |     rand::random::<u64>()
[INFO] [stdout]     |     ^^^^ function `rand` is not a crate or module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0038, E0119, E0223, E0255, E0425, E0432, E0433, E0603.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0038`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `QuicServe` (lib test) due to 40 previous errors; 30 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `QuicServe` (lib) due to 41 previous errors; 30 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "55c45008d9e05529ad92cb5db2b4aac7bb0b2c8b8b1f747c9a7d1a0655624e5b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "55c45008d9e05529ad92cb5db2b4aac7bb0b2c8b8b1f747c9a7d1a0655624e5b", kill_on_drop: false }`
[INFO] [stdout] 55c45008d9e05529ad92cb5db2b4aac7bb0b2c8b8b1f747c9a7d1a0655624e5b
