[INFO] fetching crate qrpc 0.1.2...
[INFO] documenting qrpc-0.1.2 against da3f5c31e5535b3dc210067de660a45784ae1e9c for pr-162169
[INFO] extracting crate qrpc 0.1.2 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate qrpc 0.1.2
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate qrpc 0.1.2
[INFO] tweaked toml for crates.io crate qrpc 0.1.2 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate qrpc 0.1.2 on toolchain da3f5c31e5535b3dc210067de660a45784ae1e9c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate qrpc 0.1.2 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" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 36ccb7b919cb3a32e30189ad2675643420c2a15719a508bce5b78975500f5374
[INFO] running `Command { std: "docker" "start" "36ccb7b919cb3a32e30189ad2675643420c2a15719a508bce5b78975500f5374", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "36ccb7b919cb3a32e30189ad2675643420c2a15719a508bce5b78975500f5374", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "36ccb7b919cb3a32e30189ad2675643420c2a15719a508bce5b78975500f5374" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "36ccb7b919cb3a32e30189ad2675643420c2a15719a508bce5b78975500f5374", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "36ccb7b919cb3a32e30189ad2675643420c2a15719a508bce5b78975500f5374" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "doc" "--frozen" "--no-deps" "--document-private-items" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]    Compiling quinn-udp v0.5.14
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking siphasher v1.0.2
[INFO] [stderr]    Compiling quinn v0.11.9
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]    Compiling prost-derive v0.14.3
[INFO] [stderr]     Checking rustls-pemfile v2.2.0
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking ring v0.17.14
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking dashmap v6.1.0
[INFO] [stderr]     Checking tokio v1.50.0
[INFO] [stderr]     Checking fastbloom v0.14.1
[INFO] [stderr]     Checking ulid v1.2.1
[INFO] [stderr]     Checking rustls-webpki v0.103.9
[INFO] [stderr]     Checking prost v0.14.3
[INFO] [stderr]     Checking rustls v0.23.37
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]     Checking rustls-platform-verifier v0.6.2
[INFO] [stderr]     Checking quinn-proto v0.11.13
[INFO] [stderr]  Documenting qrpc v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/config.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout]  7 | / pub struct PeerConfig {
[INFO] [stdout]  8 | |     /// IP or hostname.
[INFO] [stdout]  9 | |     pub address: String,
[INFO] [stdout] 10 | |     /// Remote listening port.
[INFO] [stdout] ...  |
[INFO] [stdout] 17 | |     pub expected_id: Option<String>,
[INFO] [stdout] 18 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Peer bootstrap configuration used by [`QrpcInstanceBuilder`].`
[INFO] [stdout]    = help: ends near `Bootstrap peer configuration used by a local instance to dial remote instances.`
[INFO] [stdout]    = note: `#[deny(rustdoc::unportable_markdown)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/config.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout]  7 | / pub struct PeerConfig {
[INFO] [stdout]  8 | |     /// IP or hostname.
[INFO] [stdout]  9 | |     pub address: String,
[INFO] [stdout] 10 | |     /// Remote listening port.
[INFO] [stdout] ...  |
[INFO] [stdout] 17 | |     pub expected_id: Option<String>,
[INFO] [stdout] 18 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Bootstrap peer configuration used by a local instance to dial remote instances.`
[INFO] [stdout]    = help: ends near `Bootstrap peer configuration used by a local instance to dial remote instances.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/error.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / pub enum QrpcError {
[INFO] [stdout]  6 | |     /// A required builder field was not provided.
[INFO] [stdout]  7 | |     #[error("missing required builder field: {0}")]
[INFO] [stdout]  8 | |     MissingField(&'static str),
[INFO] [stdout] ...  |
[INFO] [stdout] 53 | |     MessageDecode(String),
[INFO] [stdout] 54 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Error type returned by this crate.`
[INFO] [stdout]    = help: ends near `All runtime/build errors produced by `qrpc`.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/error.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / pub enum QrpcError {
[INFO] [stdout]  6 | |     /// A required builder field was not provided.
[INFO] [stdout]  7 | |     #[error("missing required builder field: {0}")]
[INFO] [stdout]  8 | |     MissingField(&'static str),
[INFO] [stdout] ...  |
[INFO] [stdout] 53 | |     MessageDecode(String),
[INFO] [stdout] 54 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `All runtime/build errors produced by `qrpc`.`
[INFO] [stdout]    = help: ends near `All runtime/build errors produced by `qrpc`.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/error.rs:57:1
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub type QrpcResult<T> = Result<T, QrpcError>;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Error type returned by this crate.`
[INFO] [stdout]    = help: ends near `Convenience result alias used across the crate.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/error.rs:57:1
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub type QrpcResult<T> = Result<T, QrpcError>;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Convenience result alias used across the crate.`
[INFO] [stdout]    = help: ends near `Convenience result alias used across the crate.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/instance.rs:38:1
[INFO] [stdout]    |
[INFO] [stdout] 38 | / pub enum ConnectionFailureKind {
[INFO] [stdout] 39 | |     /// Usually recovers by retrying (remote not started, temporary network issue, etc.).
[INFO] [stdout] 40 | |     Transient,
[INFO] [stdout] 41 | |     /// Usually does not recover without config/code changes.
[INFO] [stdout] 42 | |     Permanent,
[INFO] [stdout] 43 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Core instance and builder types.`
[INFO] [stdout]    = help: ends near `Failure class for peer connect attempts.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/instance.rs:38:1
[INFO] [stdout]    |
[INFO] [stdout] 38 | / pub enum ConnectionFailureKind {
[INFO] [stdout] 39 | |     /// Usually recovers by retrying (remote not started, temporary network issue, etc.).
[INFO] [stdout] 40 | |     Transient,
[INFO] [stdout] 41 | |     /// Usually does not recover without config/code changes.
[INFO] [stdout] 42 | |     Permanent,
[INFO] [stdout] 43 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Failure class for peer connect attempts.`
[INFO] [stdout]    = help: ends near `Failure class for peer connect attempts.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/instance.rs:68:1
[INFO] [stdout]    |
[INFO] [stdout] 68 | / pub enum OutboundCmd<M> {
[INFO] [stdout] 69 | |     /// Send one message to a specific peer. The command waits until the peer is connected.
[INFO] [stdout] 70 | |     SendTo { peer_id: String, message: M },
[INFO] [stdout] 71 | |     /// Broadcast one message to currently connected peers. If no peers are online, nothing is sent.
[INFO] [stdout] 72 | |     Broadcast { message: M },
[INFO] [stdout] 73 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Core instance and builder types.`
[INFO] [stdout]    = help: ends near `Outbound command used by [`QrpcInstance::serve_with_rx`].`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/instance.rs:68:1
[INFO] [stdout]    |
[INFO] [stdout] 68 | / pub enum OutboundCmd<M> {
[INFO] [stdout] 69 | |     /// Send one message to a specific peer. The command waits until the peer is connected.
[INFO] [stdout] 70 | |     SendTo { peer_id: String, message: M },
[INFO] [stdout] 71 | |     /// Broadcast one message to currently connected peers. If no peers are online, nothing is sent.
[INFO] [stdout] 72 | |     Broadcast { message: M },
[INFO] [stdout] 73 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Outbound command used by [`QrpcInstance::serve_with_rx`].`
[INFO] [stdout]    = help: ends near `Outbound command used by [`QrpcInstance::serve_with_rx`].`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/instance.rs:47:1
[INFO] [stdout]    |
[INFO] [stdout] 47 | / pub enum PeerConnectionEvent {
[INFO] [stdout] 48 | |     /// A bootstrap peer dial attempt has started.
[INFO] [stdout] 49 | |     Connecting { peer: PeerConfig, attempt: u32 },
[INFO] [stdout] 50 | |     /// A peer registration has completed.
[INFO] [stdout] ...  |
[INFO] [stdout] 63 | |     },
[INFO] [stdout] 64 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Core instance and builder types.`
[INFO] [stdout]    = help: ends near `Connection lifecycle events emitted by one instance.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/instance.rs:47:1
[INFO] [stdout]    |
[INFO] [stdout] 47 | / pub enum PeerConnectionEvent {
[INFO] [stdout] 48 | |     /// A bootstrap peer dial attempt has started.
[INFO] [stdout] 49 | |     Connecting { peer: PeerConfig, attempt: u32 },
[INFO] [stdout] 50 | |     /// A peer registration has completed.
[INFO] [stdout] ...  |
[INFO] [stdout] 63 | |     },
[INFO] [stdout] 64 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Connection lifecycle events emitted by one instance.`
[INFO] [stdout]    = help: ends near `Connection lifecycle events emitted by one instance.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/instance.rs:96:1
[INFO] [stdout]    |
[INFO] [stdout] 96 | / pub struct QrpcInstance<S, M, H> {
[INFO] [stdout] 97 | |     inner: Arc<Inner<S, M, H>>,
[INFO] [stdout] 98 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Core instance and builder types.`
[INFO] [stdout]    = help: ends near `Core runtime node.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/instance.rs:96:1
[INFO] [stdout]    |
[INFO] [stdout] 96 | / pub struct QrpcInstance<S, M, H> {
[INFO] [stdout] 97 | |     inner: Arc<Inner<S, M, H>>,
[INFO] [stdout] 98 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Core runtime node.`
[INFO] [stdout]    = help: ends near `Core runtime node.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/instance.rs:109:1
[INFO] [stdout]     |
[INFO] [stdout] 109 | / pub struct QrpcInstanceBuilder<StateStatus, S, M, H> {
[INFO] [stdout] 110 | |     state: Option<S>,
[INFO] [stdout] 111 | |     handler: H,
[INFO] [stdout] 112 | |     id: Option<String>,
[INFO] [stdout] ...   |
[INFO] [stdout] 124 | |     _marker: std::marker::PhantomData<M>,
[INFO] [stdout] 125 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Core instance and builder types.`
[INFO] [stdout]     = help: ends near `Typestate-based builder for [`QrpcInstance`].`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/instance.rs:109:1
[INFO] [stdout]     |
[INFO] [stdout] 109 | / pub struct QrpcInstanceBuilder<StateStatus, S, M, H> {
[INFO] [stdout] 110 | |     state: Option<S>,
[INFO] [stdout] 111 | |     handler: H,
[INFO] [stdout] 112 | |     id: Option<String>,
[INFO] [stdout] ...   |
[INFO] [stdout] 124 | |     _marker: std::marker::PhantomData<M>,
[INFO] [stdout] 125 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Typestate-based builder for [`QrpcInstance`].`
[INFO] [stdout]     = help: ends near `Typestate-based builder for [`QrpcInstance`].`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/instance.rs:101:1
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct WithState;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Core instance and builder types.`
[INFO] [stdout]     = help: ends near `Builder state marker: state has been provided.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/instance.rs:101:1
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct WithState;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Builder state marker: state has been provided.`
[INFO] [stdout]     = help: ends near `Builder state marker: state has been provided.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/instance.rs:103:1
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub struct WithoutState;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Core instance and builder types.`
[INFO] [stdout]     = help: ends near `Builder state marker: no state provided yet.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/instance.rs:103:1
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub struct WithoutState;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Builder state marker: no state provided yet.`
[INFO] [stdout]     = help: ends near `Builder state marker: no state provided yet.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/message.rs:110:1
[INFO] [stdout]     |
[INFO] [stdout] 110 | / pub struct Ctx<M>
[INFO] [stdout] 111 | | where
[INFO] [stdout] 112 | |     M: QrpcMessage,
[INFO] [stdout] ...   |
[INFO] [stdout] 115 | |     dispatcher: Arc<dyn QrpcDispatcher<M>>,
[INFO] [stdout] 116 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Message and callback traits implemented by users.`
[INFO] [stdout]     = help: ends near `Runtime context that provides instance-level operations.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/message.rs:110:1
[INFO] [stdout]     |
[INFO] [stdout] 110 | / pub struct Ctx<M>
[INFO] [stdout] 111 | | where
[INFO] [stdout] 112 | |     M: QrpcMessage,
[INFO] [stdout] ...   |
[INFO] [stdout] 115 | |     dispatcher: Arc<dyn QrpcDispatcher<M>>,
[INFO] [stdout] 116 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Runtime context that provides instance-level operations.`
[INFO] [stdout]     = help: ends near `Runtime context that provides instance-level operations.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/message.rs:43:1
[INFO] [stdout]    |
[INFO] [stdout] 43 | / pub trait FromRef<T> {
[INFO] [stdout] 44 | |     /// Converts from a reference to the outer state.
[INFO] [stdout] 45 | |     fn from_ref(input: &T) -> Self;
[INFO] [stdout] 46 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Message and callback traits implemented by users.`
[INFO] [stdout]    = help: ends near `Converts a shared outer state reference into the callback input state.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/message.rs:43:1
[INFO] [stdout]    |
[INFO] [stdout] 43 | / pub trait FromRef<T> {
[INFO] [stdout] 44 | |     /// Converts from a reference to the outer state.
[INFO] [stdout] 45 | |     fn from_ref(input: &T) -> Self;
[INFO] [stdout] 46 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Converts a shared outer state reference into the callback input state.`
[INFO] [stdout]    = help: ends near `Converts a shared outer state reference into the callback input state.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/message.rs:58:1
[INFO] [stdout]    |
[INFO] [stdout] 58 | / pub trait QrpcCallback<S, M>: Send + Sync + 'static
[INFO] [stdout] 59 | | where
[INFO] [stdout] 60 | |     S: Send + Sync + 'static,
[INFO] [stdout] 61 | |     M: QrpcMessage,
[INFO] [stdout] ...  |
[INFO] [stdout] 70 | |     ) -> Pin<Box<dyn Future<Output=QrpcResult<()>> + Send>>;
[INFO] [stdout] 71 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Message and callback traits implemented by users.`
[INFO] [stdout]    = help: ends near `Async callback invoked when a decoded message is received.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/message.rs:58:1
[INFO] [stdout]    |
[INFO] [stdout] 58 | / pub trait QrpcCallback<S, M>: Send + Sync + 'static
[INFO] [stdout] 59 | | where
[INFO] [stdout] 60 | |     S: Send + Sync + 'static,
[INFO] [stdout] 61 | |     M: QrpcMessage,
[INFO] [stdout] ...  |
[INFO] [stdout] 70 | |     ) -> Pin<Box<dyn Future<Output=QrpcResult<()>> + Send>>;
[INFO] [stdout] 71 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Async callback invoked when a decoded message is received.`
[INFO] [stdout]    = help: ends near `Async callback invoked when a decoded message is received.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/message.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | / pub trait QrpcMessage: Send + Sync + Sized + 'static {
[INFO] [stdout] 13 | |     /// Returns the command ID used on the wire.
[INFO] [stdout] 14 | |     fn cmd_id(&self) -> u32;
[INFO] [stdout] 15 | |     /// Encodes the message into bytes.
[INFO] [stdout] ...  |
[INFO] [stdout] 18 | |     fn decode_vec(cmd_id: u32, data: &[u8]) -> QrpcResult<Self>;
[INFO] [stdout] 19 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Message and callback traits implemented by users.`
[INFO] [stdout]    = help: ends near `User-defined message abstraction carried by `qrpc`.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/message.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | / pub trait QrpcMessage: Send + Sync + Sized + 'static {
[INFO] [stdout] 13 | |     /// Returns the command ID used on the wire.
[INFO] [stdout] 14 | |     fn cmd_id(&self) -> u32;
[INFO] [stdout] 15 | |     /// Encodes the message into bytes.
[INFO] [stdout] ...  |
[INFO] [stdout] 18 | |     fn decode_vec(cmd_id: u32, data: &[u8]) -> QrpcResult<Self>;
[INFO] [stdout] 19 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `User-defined message abstraction carried by `qrpc`.`
[INFO] [stdout]    = help: ends near `User-defined message abstraction carried by `qrpc`.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/message.rs:23:1
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct State<S>(pub S);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Message and callback traits implemented by users.`
[INFO] [stdout]    = help: ends near `State wrapper passed to user callbacks.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/message.rs:23:1
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct State<S>(pub S);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `State wrapper passed to user callbacks.`
[INFO] [stdout]    = help: ends near `State wrapper passed to user callbacks.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not document `qrpc`
[INFO] running `Command { std: "docker" "inspect" "36ccb7b919cb3a32e30189ad2675643420c2a15719a508bce5b78975500f5374", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "36ccb7b919cb3a32e30189ad2675643420c2a15719a508bce5b78975500f5374", kill_on_drop: false }`
[INFO] [stdout] 36ccb7b919cb3a32e30189ad2675643420c2a15719a508bce5b78975500f5374
