[INFO] fetching crate service-async 0.2.4...
[INFO] documenting service-async-0.2.4 against da3f5c31e5535b3dc210067de660a45784ae1e9c for pr-162169
[INFO] extracting crate service-async 0.2.4 into /workspace/builds/worker-1-tc2/source
[INFO] removed /workspace/builds/worker-1-tc2/source/rust-toolchain
[INFO] started tweaking crates.io crate service-async 0.2.4
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate service-async 0.2.4
[INFO] tweaked toml for crates.io crate service-async 0.2.4 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate service-async 0.2.4 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 service-async 0.2.4 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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 1d9463b2a0763cdaa263c4ed49f549ac61ea58ef4141effc96d03647983f1e25
[INFO] running `Command { std: "docker" "start" "1d9463b2a0763cdaa263c4ed49f549ac61ea58ef4141effc96d03647983f1e25", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1d9463b2a0763cdaa263c4ed49f549ac61ea58ef4141effc96d03647983f1e25", 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" "1d9463b2a0763cdaa263c4ed49f549ac61ea58ef4141effc96d03647983f1e25" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1d9463b2a0763cdaa263c4ed49f549ac61ea58ef4141effc96d03647983f1e25", 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" "1d9463b2a0763cdaa263c4ed49f549ac61ea58ef4141effc96d03647983f1e25" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "doc" "--frozen" "--no-deps" "--document-private-items" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking param v0.1.2
[INFO] [stderr]  Documenting service-async v0.2.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]   --> src/lib.rs:44:70
[INFO] [stdout]    |
[INFO] [stdout] 44 | //! This crate leverages `impl Trait` to introduce a new [`Service`](crate::Service)
[INFO] [stdout]    |                                                           ---------  ^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]    |                                                           |
[INFO] [stdout]    |                                                           because label contains path that resolves to same destination
[INFO] [stdout]    |
[INFO] [stdout]    = note: when a link's destination is not specified,
[INFO] [stdout]            the label is used to resolve intra-doc links
[INFO] [stdout]    = note: `#[warn(rustdoc::redundant_explicit_links)]` on by default
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]    |
[INFO] [stdout] 44 - //! This crate leverages `impl Trait` to introduce a new [`Service`](crate::Service)
[INFO] [stdout] 44 + //! This crate leverages `impl Trait` to introduce a new [`Service`]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]   --> src/lib.rs:53:82
[INFO] [stdout]    |
[INFO] [stdout] 53 | //! This approach combines the power of `impl Trait` with a refined  [`Service`](crate::Service)
[INFO] [stdout]    |                                                                       ---------  ^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]    |                                                                       |
[INFO] [stdout]    |                                                                       because label contains path that resolves to same destination
[INFO] [stdout]    |
[INFO] [stdout]    = note: when a link's destination is not specified,
[INFO] [stdout]            the label is used to resolve intra-doc links
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]    |
[INFO] [stdout] 53 - //! This approach combines the power of `impl Trait` with a refined  [`Service`](crate::Service)
[INFO] [stdout] 53 + //! This approach combines the power of `impl Trait` with a refined  [`Service`]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]   --> src/lib.rs:64:29
[INFO] [stdout]    |
[INFO] [stdout] 64 | //! Our refined [`Service`](crate::Service) trait is defined as:
[INFO] [stdout]    |                  ---------  ^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  because label contains path that resolves to same destination
[INFO] [stdout]    |
[INFO] [stdout]    = note: when a link's destination is not specified,
[INFO] [stdout]            the label is used to resolve intra-doc links
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]    |
[INFO] [stdout] 64 - //! Our refined [`Service`](crate::Service) trait is defined as:
[INFO] [stdout] 64 + //! Our refined [`Service`] trait is defined as:
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]   --> src/lib.rs:81:51
[INFO] [stdout]    |
[INFO] [stdout] 81 | //! Compared to Tower's approach, our [`Service`](crate::Service) trait represents a paradigm shift:
[INFO] [stdout]    |                                        ---------  ^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]    |                                        |
[INFO] [stdout]    |                                        because label contains path that resolves to same destination
[INFO] [stdout]    |
[INFO] [stdout]    = note: when a link's destination is not specified,
[INFO] [stdout]            the label is used to resolve intra-doc links
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]    |
[INFO] [stdout] 81 - //! Compared to Tower's approach, our [`Service`](crate::Service) trait represents a paradigm shift:
[INFO] [stdout] 81 + //! Compared to Tower's approach, our [`Service`] trait represents a paradigm shift:
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]   --> src/lib.rs:90:30
[INFO] [stdout]    |
[INFO] [stdout] 90 | //! This refined [`Service`](crate::Service) trait offers a more intuitive, efficient,
[INFO] [stdout]    |                   ---------  ^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   because label contains path that resolves to same destination
[INFO] [stdout]    |
[INFO] [stdout]    = note: when a link's destination is not specified,
[INFO] [stdout]            the label is used to resolve intra-doc links
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]    |
[INFO] [stdout] 90 - //! This refined [`Service`](crate::Service) trait offers a more intuitive, efficient,
[INFO] [stdout] 90 + //! This refined [`Service`] trait offers a more intuitive, efficient,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]   --> src/lib.rs:95:25
[INFO] [stdout]    |
[INFO] [stdout] 95 | //! The [`MakeService`](crate::MakeService) trait provides a flexible way to construct
[INFO] [stdout]    |          -------------  ^^^^^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]    |          |
[INFO] [stdout]    |          because label contains path that resolves to same destination
[INFO] [stdout]    |
[INFO] [stdout]    = note: when a link's destination is not specified,
[INFO] [stdout]            the label is used to resolve intra-doc links
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]    |
[INFO] [stdout] 95 - //! The [`MakeService`](crate::MakeService) trait provides a flexible way to construct
[INFO] [stdout] 95 + //! The [`MakeService`] trait provides a flexible way to construct
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]    --> src/lib.rs:157:25
[INFO] [stdout]     |
[INFO] [stdout] 157 | //! The [`MakeService`](crate::MakeService) trait is the cornerstone of our Service factory
[INFO] [stdout]     |          -------------  ^^^^^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]     |          |
[INFO] [stdout]     |          because label contains path that resolves to same destination
[INFO] [stdout]     |
[INFO] [stdout]     = note: when a link's destination is not specified,
[INFO] [stdout]             the label is used to resolve intra-doc links
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]     |
[INFO] [stdout] 157 - //! The [`MakeService`](crate::MakeService) trait is the cornerstone of our Service factory
[INFO] [stdout] 157 + //! The [`MakeService`] trait is the cornerstone of our Service factory
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]    --> src/lib.rs:253:80
[INFO] [stdout]     |
[INFO] [stdout] 253 | //! This example demonstrates the practical application of the [`MakeService`](crate::MakeService),
[INFO] [stdout]     |                                                                 -------------  ^^^^^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]     |                                                                 |
[INFO] [stdout]     |                                                                 because label contains path that resolves to same destination
[INFO] [stdout]     |
[INFO] [stdout]     = note: when a link's destination is not specified,
[INFO] [stdout]             the label is used to resolve intra-doc links
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]     |
[INFO] [stdout] 253 - //! This example demonstrates the practical application of the [`MakeService`](crate::MakeService),
[INFO] [stdout] 253 + //! This example demonstrates the practical application of the [`MakeService`],
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/boxed.rs:73:1
[INFO] [stdout]    |
[INFO] [stdout] 73 | / pub trait BoxService<Request, Response, E> {
[INFO] [stdout] 74 | |     fn into_boxed(self) -> BoxedService<Request, Response, E>;
[INFO] [stdout] 75 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Trait for converting a service into a boxed service.`
[INFO] [stdout]    = help: ends near `Trait for converting a service into a boxed service.`
[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/boxed.rs:180:1
[INFO] [stdout]     |
[INFO] [stdout] 180 | / pub struct BoxedAsyncMakeService<S, E> {
[INFO] [stdout] 181 | |     svc: *const (),
[INFO] [stdout] 182 | |     type_id: TypeId,
[INFO] [stdout] 183 | |     vtable: AsyncMakeServiceVtable<S, E>,
[INFO] [stdout] 184 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `A type-erased wrapper for asynchronous service factories.`
[INFO] [stdout]     = help: ends near `A type-erased wrapper for asynchronous service factories.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/boxed.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | / pub struct BoxedService<Request, Response, E> {
[INFO] [stdout] 13 | |     svc: *const (),
[INFO] [stdout] 14 | |     type_id: TypeId,
[INFO] [stdout] 15 | |     vtable: ServiceVtable<Request, Response, E>,
[INFO] [stdout] 16 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `A type-erased wrapper for services, enabling dynamic dispatch.`
[INFO] [stdout]    = help: ends near `through a common interface.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/boxed.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | / pub struct BoxedService<Request, Response, E> {
[INFO] [stdout] 13 | |     svc: *const (),
[INFO] [stdout] 14 | |     type_id: TypeId,
[INFO] [stdout] 15 | |     vtable: ServiceVtable<Request, Response, E>,
[INFO] [stdout] 16 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `A type-erased wrapper for services, enabling dynamic dispatch.`
[INFO] [stdout]    = help: ends near `A type-erased wrapper for services, enabling dynamic dispatch.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not document `service-async`
[INFO] running `Command { std: "docker" "inspect" "1d9463b2a0763cdaa263c4ed49f549ac61ea58ef4141effc96d03647983f1e25", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1d9463b2a0763cdaa263c4ed49f549ac61ea58ef4141effc96d03647983f1e25", kill_on_drop: false }`
[INFO] [stdout] 1d9463b2a0763cdaa263c4ed49f549ac61ea58ef4141effc96d03647983f1e25
