[INFO] cloning repository https://github.com/jcayzac/ultrajpeg
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jcayzac/ultrajpeg" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjcayzac%2Fultrajpeg", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjcayzac%2Fultrajpeg'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 10ec937b37768a493155efde043b90a09da91929
[INFO] documenting jcayzac/ultrajpeg against da3f5c31e5535b3dc210067de660a45784ae1e9c for pr-162169
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjcayzac%2Fultrajpeg" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-3-tc2/source/.cargo/config.toml
[INFO] removed /workspace/builds/worker-3-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/jcayzac/ultrajpeg
[INFO] finished tweaking git repo https://github.com/jcayzac/ultrajpeg
[INFO] tweaked toml for git repo https://github.com/jcayzac/ultrajpeg written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jcayzac/ultrajpeg 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 git repo https://github.com/jcayzac/ultrajpeg 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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] fde381c8bda8c8d0fa6f72a1a56802f2573f526b9ecf62cc44a1f54f1f1a36c8
[INFO] running `Command { std: "docker" "start" "fde381c8bda8c8d0fa6f72a1a56802f2573f526b9ecf62cc44a1f54f1f1a36c8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fde381c8bda8c8d0fa6f72a1a56802f2573f526b9ecf62cc44a1f54f1f1a36c8", 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" "fde381c8bda8c8d0fa6f72a1a56802f2573f526b9ecf62cc44a1f54f1f1a36c8" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fde381c8bda8c8d0fa6f72a1a56802f2573f526b9ecf62cc44a1f54f1f1a36c8", 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" "fde381c8bda8c8d0fa6f72a1a56802f2573f526b9ecf62cc44a1f54f1f1a36c8" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "doc" "--frozen" "--no-deps" "--document-private-items" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]     Checking safe_unaligned_simd v0.2.5
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]     Checking enough v0.4.3
[INFO] [stderr]     Checking bytes v1.11.1
[INFO] [stderr]     Checking zune-core v0.5.1
[INFO] [stderr]     Checking imgref v1.12.0
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking yuv v0.8.12
[INFO] [stderr]     Checking zune-jpeg v0.5.15
[INFO] [stderr]     Checking img-parts v0.4.0
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling archmage-macros v0.8.9
[INFO] [stderr]    Compiling archmage-macros v0.9.14
[INFO] [stderr]     Checking archmage v0.8.9
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]     Checking magetypes v0.8.9
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking archmage v0.9.14
[INFO] [stderr]     Checking safe_arch v1.0.0
[INFO] [stderr]     Checking rgb v0.8.53
[INFO] [stderr]     Checking wide v1.2.0
[INFO] [stderr]     Checking mozjpeg-rs v0.9.0
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ultrahdr-core v0.2.0
[INFO] [stderr]  Documenting ultrajpeg v0.5.0-rc8 (/opt/rustwide/workdir)
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/error.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / pub enum Error {
[INFO] [stdout] 10 | |     /// The caller requested an unsupported pixel format, JPEG coding mode, or
[INFO] [stdout] 11 | |     /// reconstruction output.
[INFO] [stdout] 12 | |     #[error("unsupported image format: {0}")]
[INFO] [stdout] ...  |
[INFO] [stdout] 48 | |     Io(#[from] std::io::Error),
[INFO] [stdout] 49 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Public error type for codec, container, and metadata failures.`
[INFO] [stdout]    = help: ends near `Public error type for codec, container, and metadata failures.`
[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/error.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub type Result<T> = std::result::Result<T, Error>;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: the way this is parsed might change in the future
[INFO] [stdout]   = help: starts near `Public error type for codec, container, and metadata failures.`
[INFO] [stdout]   = help: ends near `Result type used by the crate.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]  --> src/error.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub type Result<T> = std::result::Result<T, Error>;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: the way this is parsed might change in the future
[INFO] [stdout]   = help: starts near `Result type used by the crate.`
[INFO] [stdout]   = help: ends near `Result type used by the crate.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/types.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / pub enum ChromaSubsampling {
[INFO] [stdout]  9 | |     /// 4:2:0 chroma subsampling.
[INFO] [stdout] 10 | |     #[default]
[INFO] [stdout] 11 | |     Yuv420,
[INFO] [stdout] ...  |
[INFO] [stdout] 17 | |     Yuv440,
[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 `JPEG chroma-subsampling modes supported when encoding primary images.`
[INFO] [stdout]    = help: ends near `Chroma subsampling modes exposed by the public API.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/types.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / pub enum ChromaSubsampling {
[INFO] [stdout]  9 | |     /// 4:2:0 chroma subsampling.
[INFO] [stdout] 10 | |     #[default]
[INFO] [stdout] 11 | |     Yuv420,
[INFO] [stdout] ...  |
[INFO] [stdout] 17 | |     Yuv440,
[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 `Chroma subsampling modes exposed by the public API.`
[INFO] [stdout]    = help: ends near `Chroma subsampling modes exposed by the public API.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/types.rs:43:1
[INFO] [stdout]    |
[INFO] [stdout] 43 | / pub struct Chromaticity {
[INFO] [stdout] 44 | |     /// Horizontal chromaticity coordinate.
[INFO] [stdout] 45 | |     pub x: f32,
[INFO] [stdout] 46 | |     /// Vertical chromaticity coordinate.
[INFO] [stdout] 47 | |     pub y: f32,
[INFO] [stdout] 48 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `An xy chromaticity coordinate.`
[INFO] [stdout]    = help: ends near `An xy chromaticity coordinate.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:271:1
[INFO] [stdout]     |
[INFO] [stdout] 271 | / pub struct CodestreamLayout {
[INFO] [stdout] 272 | |     /// Byte offset of the codestream start in the original input.
[INFO] [stdout] 273 | |     pub offset: usize,
[INFO] [stdout] 274 | |     /// Byte length of the codestream.
[INFO] [stdout] ...   |
[INFO] [stdout] 278 | |     pub len: usize,
[INFO] [stdout] 279 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Structural layout of one embedded JPEG codestream.`
[INFO] [stdout]     = help: ends near `Byte range of one embedded JPEG codestream inside an input buffer.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:271:1
[INFO] [stdout]     |
[INFO] [stdout] 271 | / pub struct CodestreamLayout {
[INFO] [stdout] 272 | |     /// Byte offset of the codestream start in the original input.
[INFO] [stdout] 273 | |     pub offset: usize,
[INFO] [stdout] 274 | |     /// Byte length of the codestream.
[INFO] [stdout] ...   |
[INFO] [stdout] 278 | |     pub len: usize,
[INFO] [stdout] 279 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Byte range of one embedded JPEG codestream inside an input buffer.`
[INFO] [stdout]     = help: ends near `Byte range of one embedded JPEG codestream inside an input buffer.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:81:1
[INFO] [stdout]     |
[INFO] [stdout]  81 | / pub struct ColorMetadata {
[INFO] [stdout]  82 | |     /// ICC profile bytes embedded in the primary JPEG, if present.
[INFO] [stdout]  83 | |     ///
[INFO] [stdout]  84 | |     /// On encode, setting this field requests that the given profile be written
[INFO] [stdout] ...   |
[INFO] [stdout] 107 | |     pub transfer: Option<ColorTransfer>,
[INFO] [stdout] 108 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Color-related metadata attached to the primary JPEG image.`
[INFO] [stdout]     = help: ends near `Color-related metadata attached to the primary JPEG image.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/types.rs:33:1
[INFO] [stdout]    |
[INFO] [stdout] 33 | / pub enum CompressionEffort {
[INFO] [stdout] 34 | |     /// Balanced size and encode time.
[INFO] [stdout] 35 | |     #[default]
[INFO] [stdout] 36 | |     Balanced,
[INFO] [stdout] 37 | |     /// Favor smaller output over encode time.
[INFO] [stdout] 38 | |     Smallest,
[INFO] [stdout] 39 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `JPEG compression effort used during encoding.`
[INFO] [stdout]    = help: ends near `JPEG compression effort.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/types.rs:33:1
[INFO] [stdout]    |
[INFO] [stdout] 33 | / pub enum CompressionEffort {
[INFO] [stdout] 34 | |     /// Balanced size and encode time.
[INFO] [stdout] 35 | |     #[default]
[INFO] [stdout] 36 | |     Balanced,
[INFO] [stdout] 37 | |     /// Favor smaller output over encode time.
[INFO] [stdout] 38 | |     Smallest,
[INFO] [stdout] 39 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `JPEG compression effort.`
[INFO] [stdout]    = help: ends near `JPEG compression effort.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:436:1
[INFO] [stdout]     |
[INFO] [stdout] 436 | / pub struct ComputeGainMapOptions {
[INFO] [stdout] 437 | |     /// Whether the computed gain map should be single-channel or multichannel.
[INFO] [stdout] 438 | |     ///
[INFO] [stdout] 439 | |     /// The default is [`GainMapChannels::Single`].
[INFO] [stdout] ...   |
[INFO] [stdout] 444 | |     pub scale: GainMapScale,
[INFO] [stdout] 445 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Options for gain-map computation from HDR and SDR inputs.`
[INFO] [stdout]     = help: ends near `Options for gain-map computation from HDR and SDR primary images.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:436:1
[INFO] [stdout]     |
[INFO] [stdout] 436 | / pub struct ComputeGainMapOptions {
[INFO] [stdout] 437 | |     /// Whether the computed gain map should be single-channel or multichannel.
[INFO] [stdout] 438 | |     ///
[INFO] [stdout] 439 | |     /// The default is [`GainMapChannels::Single`].
[INFO] [stdout] ...   |
[INFO] [stdout] 444 | |     pub scale: GainMapScale,
[INFO] [stdout] 445 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Options for gain-map computation from HDR and SDR primary images.`
[INFO] [stdout]     = help: ends near `Options for gain-map computation from HDR and SDR primary images.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:449:1
[INFO] [stdout]     |
[INFO] [stdout] 449 | / pub struct ComputedGainMap {
[INFO] [stdout] 450 | |     /// Gain-map image pixels ready to be JPEG-encoded and bundled.
[INFO] [stdout] 451 | |     pub image: RawImage,
[INFO] [stdout] 452 | |     /// Gain-map metadata ready to be serialized into the secondary gain-map
[INFO] [stdout] 453 | |     /// JPEG's `hdrgm:*` XMP and ISO 21496-1 payloads.
[INFO] [stdout] 454 | |     pub metadata: GainMapMetadata,
[INFO] [stdout] 455 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Result of computing an Ultra HDR gain map from HDR and SDR inputs.`
[INFO] [stdout]     = help: ends near `Result of computing an Ultra HDR gain map from HDR and SDR images.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:449:1
[INFO] [stdout]     |
[INFO] [stdout] 449 | / pub struct ComputedGainMap {
[INFO] [stdout] 450 | |     /// Gain-map image pixels ready to be JPEG-encoded and bundled.
[INFO] [stdout] 451 | |     pub image: RawImage,
[INFO] [stdout] 452 | |     /// Gain-map metadata ready to be serialized into the secondary gain-map
[INFO] [stdout] 453 | |     /// JPEG's `hdrgm:*` XMP and ISO 21496-1 payloads.
[INFO] [stdout] 454 | |     pub metadata: GainMapMetadata,
[INFO] [stdout] 455 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Result of computing an Ultra HDR gain map from HDR and SDR images.`
[INFO] [stdout]     = help: ends near `Result of computing an Ultra HDR gain map from HDR and SDR images.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:259:1
[INFO] [stdout]     |
[INFO] [stdout] 259 | / pub enum ContainerKind {
[INFO] [stdout] 260 | |     /// A single JPEG codestream with no additional embedded JPEG payloads.
[INFO] [stdout] 261 | |     Jpeg,
[INFO] [stdout] 262 | |     /// An MPF-bundled multi-image JPEG.
[INFO] [stdout] ...   |
[INFO] [stdout] 266 | |     ConcatenatedJpegs,
[INFO] [stdout] 267 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Structural classification of a JPEG container.`
[INFO] [stdout]     = help: ends near `Structural classification of a JPEG container.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:289:1
[INFO] [stdout]     |
[INFO] [stdout] 289 | / pub struct ContainerLayout {
[INFO] [stdout] 290 | |     /// Structural classification of the input container.
[INFO] [stdout] 291 | |     pub kind: ContainerKind,
[INFO] [stdout] 292 | |     /// Embedded JPEG codestreams in container order.
[INFO] [stdout] ...   |
[INFO] [stdout] 298 | |     pub gain_map_index: Option<usize>,
[INFO] [stdout] 299 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Structural layout of a JPEG or multi-image JPEG container.`
[INFO] [stdout]     = help: ends near `Structural layout of a JPEG or multi-image JPEG container.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:306:1
[INFO] [stdout]     |
[INFO] [stdout] 306 | / pub struct DecodeOptions {
[INFO] [stdout] 307 | |     /// Whether to decode the embedded gain-map JPEG when present.
[INFO] [stdout] 308 | |     ///
[INFO] [stdout] 309 | |     /// This only affects gain-map pixel decode. Ultra HDR metadata inspection
[INFO] [stdout] ...   |
[INFO] [stdout] 320 | |     pub retain_gain_map_jpeg: bool,
[INFO] [stdout] 321 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Decode configuration.`
[INFO] [stdout]     = help: ends near `Decode configuration.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:182:1
[INFO] [stdout]     |
[INFO] [stdout] 182 | / pub struct DecodedGainMap {
[INFO] [stdout] 183 | |     /// Decoded secondary JPEG pixels.
[INFO] [stdout] 184 | |     pub image: RawImage,
[INFO] [stdout] 185 | |     /// Gain-map representation derived from [`DecodedGainMap::image`].
[INFO] [stdout] ...   |
[INFO] [stdout] 201 | |     pub jpeg_bytes: Option<Vec<u8>>,
[INFO] [stdout] 202 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Decoded gain-map JPEG payload and associated metadata.`
[INFO] [stdout]     = help: ends near `Decoded gain-map payload and associated metadata.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:182:1
[INFO] [stdout]     |
[INFO] [stdout] 182 | / pub struct DecodedGainMap {
[INFO] [stdout] 183 | |     /// Decoded secondary JPEG pixels.
[INFO] [stdout] 184 | |     pub image: RawImage,
[INFO] [stdout] 185 | |     /// Gain-map representation derived from [`DecodedGainMap::image`].
[INFO] [stdout] ...   |
[INFO] [stdout] 201 | |     pub jpeg_bytes: Option<Vec<u8>>,
[INFO] [stdout] 202 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Decoded gain-map payload and associated metadata.`
[INFO] [stdout]     = help: ends near `Decoded gain-map payload and associated metadata.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:206:1
[INFO] [stdout]     |
[INFO] [stdout] 206 | / pub struct DecodedImage {
[INFO] [stdout] 207 | |     /// Decoded primary-image pixels.
[INFO] [stdout] 208 | |     ///
[INFO] [stdout] 209 | |     /// When parsed primary-image color metadata is available, `ultrajpeg`
[INFO] [stdout] ...   |
[INFO] [stdout] 223 | |     pub gain_map: Option<DecodedGainMap>,
[INFO] [stdout] 224 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Fully decoded JPEG or Ultra HDR JPEG.`
[INFO] [stdout]     = help: ends near `Fully decoded JPEG/UltraHDR image.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:206:1
[INFO] [stdout]     |
[INFO] [stdout] 206 | / pub struct DecodedImage {
[INFO] [stdout] 207 | |     /// Decoded primary-image pixels.
[INFO] [stdout] 208 | |     ///
[INFO] [stdout] 209 | |     /// When parsed primary-image color metadata is available, `ultrajpeg`
[INFO] [stdout] ...   |
[INFO] [stdout] 223 | |     pub gain_map: Option<DecodedGainMap>,
[INFO] [stdout] 224 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Fully decoded JPEG/UltraHDR image.`
[INFO] [stdout]     = help: ends near `Fully decoded JPEG/UltraHDR image.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:529:1
[INFO] [stdout]     |
[INFO] [stdout] 529 | / pub struct EncodeOptions {
[INFO] [stdout] 530 | |     /// JPEG quality for the primary image.
[INFO] [stdout] 531 | |     pub quality: u8,
[INFO] [stdout] 532 | |     /// Whether to emit the primary JPEG as progressive.
[INFO] [stdout] ...   |
[INFO] [stdout] 556 | |     pub gain_map: Option<GainMapBundle>,
[INFO] [stdout] 557 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Encode configuration for the primary JPEG and optional gain-map bundle.`
[INFO] [stdout]     = help: ends near `Encode configuration for the primary image and optional bundled gain map.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:529:1
[INFO] [stdout]     |
[INFO] [stdout] 529 | / pub struct EncodeOptions {
[INFO] [stdout] 530 | |     /// JPEG quality for the primary image.
[INFO] [stdout] 531 | |     pub quality: u8,
[INFO] [stdout] 532 | |     /// Whether to emit the primary JPEG as progressive.
[INFO] [stdout] ...   |
[INFO] [stdout] 556 | |     pub gain_map: Option<GainMapBundle>,
[INFO] [stdout] 557 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Encode configuration for the primary image and optional bundled gain map.`
[INFO] [stdout]     = help: ends near `Encode configuration for the primary image and optional bundled gain map.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:813:1
[INFO] [stdout]     |
[INFO] [stdout] 813 | / pub struct Encoder {
[INFO] [stdout] 814 | |     pub(crate) options: EncodeOptions,
[INFO] [stdout] 815 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Reusable stateful encoder.`
[INFO] [stdout]     = help: ends near `Reusable stateful encoder.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:335:1
[INFO] [stdout]     |
[INFO] [stdout] 335 | / pub struct GainMapBundle {
[INFO] [stdout] 336 | |     /// Gain-map image pixels to encode as the secondary JPEG.
[INFO] [stdout] 337 | |     pub image: RawImage,
[INFO] [stdout] 338 | |     /// Gain-map metadata to serialize into the secondary gain-map JPEG's
[INFO] [stdout] ...   |
[INFO] [stdout] 353 | |     pub compression: CompressionEffort,
[INFO] [stdout] 354 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Gain-map payload and metadata to bundle into an Ultra HDR JPEG.`
[INFO] [stdout]     = help: ends near `Gain-map payload and metadata to bundle into the final output.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:335:1
[INFO] [stdout]     |
[INFO] [stdout] 335 | / pub struct GainMapBundle {
[INFO] [stdout] 336 | |     /// Gain-map image pixels to encode as the secondary JPEG.
[INFO] [stdout] 337 | |     pub image: RawImage,
[INFO] [stdout] 338 | |     /// Gain-map metadata to serialize into the secondary gain-map JPEG's
[INFO] [stdout] ...   |
[INFO] [stdout] 353 | |     pub compression: CompressionEffort,
[INFO] [stdout] 354 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Gain-map payload and metadata to bundle into the final output.`
[INFO] [stdout]     = help: ends near `Gain-map payload and metadata to bundle into the final output.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:404:1
[INFO] [stdout]     |
[INFO] [stdout] 404 | / pub enum GainMapChannels {
[INFO] [stdout] 405 | |     /// Compute a single-channel luminance gain map.
[INFO] [stdout] 406 | |     #[default]
[INFO] [stdout] 407 | |     Single,
[INFO] [stdout] 408 | |     /// Compute a multichannel RGB gain map.
[INFO] [stdout] 409 | |     Multi,
[INFO] [stdout] 410 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Channel layout used when computing a gain map.`
[INFO] [stdout]     = help: ends near `Gain-map channel layout for computed Ultra HDR metadata.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:404:1
[INFO] [stdout]     |
[INFO] [stdout] 404 | / pub enum GainMapChannels {
[INFO] [stdout] 405 | |     /// Compute a single-channel luminance gain map.
[INFO] [stdout] 406 | |     #[default]
[INFO] [stdout] 407 | |     Single,
[INFO] [stdout] 408 | |     /// Compute a multichannel RGB gain map.
[INFO] [stdout] 409 | |     Multi,
[INFO] [stdout] 410 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Gain-map channel layout for computed Ultra HDR metadata.`
[INFO] [stdout]     = help: ends near `Gain-map channel layout for computed Ultra HDR metadata.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:142:1
[INFO] [stdout]     |
[INFO] [stdout] 142 | / pub enum GainMapMetadataSource {
[INFO] [stdout] 143 | |     /// Effective metadata was parsed from ISO 21496-1.
[INFO] [stdout] 144 | |     Iso21496_1,
[INFO] [stdout] 145 | |     /// Effective metadata was parsed from Ultra HDR XMP.
[INFO] [stdout] 146 | |     Xmp,
[INFO] [stdout] 147 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Representation from which effective gain-map metadata was parsed.`
[INFO] [stdout]     = help: ends near `Representation from which effective gain-map metadata was parsed.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:414:1
[INFO] [stdout]     |
[INFO] [stdout] 414 | / pub enum GainMapScale {
[INFO] [stdout] 415 | |     /// Compute the gain map at full primary-image resolution.
[INFO] [stdout] 416 | |     ///
[INFO] [stdout] 417 | |     /// This maps to a scale factor of `1` and is recommended for best
[INFO] [stdout] ...   |
[INFO] [stdout] 431 | |     Smallest,
[INFO] [stdout] 432 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Supported spatial scales for computed gain maps.`
[INFO] [stdout]     = help: ends near `Supported spatial scales for computed gain maps.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/types.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | / pub struct GamutInfo {
[INFO] [stdout] 64 | |     /// Matching named gamut standard, if the primaries and white point match
[INFO] [stdout] 65 | |     /// one of the crate's known RGB standards within tolerance.
[INFO] [stdout] 66 | |     pub standard: Option<ColorGamut>,
[INFO] [stdout] ...  |
[INFO] [stdout] 74 | |     pub white: Chromaticity,
[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 `Structured gamut information recovered from explicit metadata or ICC data.`
[INFO] [stdout]    = help: ends near `profile.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/types.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | / pub struct GamutInfo {
[INFO] [stdout] 64 | |     /// Matching named gamut standard, if the primaries and white point match
[INFO] [stdout] 65 | |     /// one of the crate's known RGB standards within tolerance.
[INFO] [stdout] 66 | |     pub standard: Option<ColorGamut>,
[INFO] [stdout] ...  |
[INFO] [stdout] 74 | |     pub white: Chromaticity,
[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 `Structured gamut information derived from explicit signaling or an ICC`
[INFO] [stdout]    = help: ends near `Structured gamut information derived from explicit signaling or an ICC`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:230:1
[INFO] [stdout]     |
[INFO] [stdout] 230 | / pub struct Inspection {
[INFO] [stdout] 231 | |     /// Length in bytes of the primary JPEG codestream.
[INFO] [stdout] 232 | |     pub primary_jpeg_len: usize,
[INFO] [stdout] 233 | |     /// Length in bytes of the embedded gain-map JPEG codestream, if present.
[INFO] [stdout] ...   |
[INFO] [stdout] 238 | |     pub ultra_hdr: Option<UltraHdrMetadata>,
[INFO] [stdout] 239 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Metadata-only inspection result.`
[INFO] [stdout]     = help: ends near `Metadata-only JPEG or Ultra HDR inspection result.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:230:1
[INFO] [stdout]     |
[INFO] [stdout] 230 | / pub struct Inspection {
[INFO] [stdout] 231 | |     /// Length in bytes of the primary JPEG codestream.
[INFO] [stdout] 232 | |     pub primary_jpeg_len: usize,
[INFO] [stdout] 233 | |     /// Length in bytes of the embedded gain-map JPEG codestream, if present.
[INFO] [stdout] ...   |
[INFO] [stdout] 238 | |     pub ultra_hdr: Option<UltraHdrMetadata>,
[INFO] [stdout] 239 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Metadata-only JPEG or Ultra HDR inspection result.`
[INFO] [stdout]     = help: ends near `Metadata-only JPEG or Ultra HDR inspection result.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:133:1
[INFO] [stdout]     |
[INFO] [stdout] 133 | / pub enum MetadataLocation {
[INFO] [stdout] 134 | |     /// Metadata came from the primary JPEG.
[INFO] [stdout] 135 | |     Primary,
[INFO] [stdout] 136 | |     /// Metadata came from the embedded gain-map JPEG.
[INFO] [stdout] 137 | |     GainMap,
[INFO] [stdout] 138 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Location from which Ultra HDR metadata was resolved.`
[INFO] [stdout]     = help: ends near `Location from which Ultra HDR metadata was resolved.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:250:1
[INFO] [stdout]     |
[INFO] [stdout] 250 | / pub struct ParsedGainMapXmp {
[INFO] [stdout] 251 | |     /// Parsed gain-map metadata.
[INFO] [stdout] 252 | |     pub metadata: GainMapMetadata,
[INFO] [stdout] 253 | |     /// Gain-map JPEG length recovered from container-directory XMP, if present.
[INFO] [stdout] 254 | |     pub gain_map_jpeg_len: Option<usize>,
[INFO] [stdout] 255 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Parsed raw `hdrgm:*` XMP payload.`
[INFO] [stdout]     = help: ends near `Parsed `hdrgm:*` XMP payload.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:250:1
[INFO] [stdout]     |
[INFO] [stdout] 250 | / pub struct ParsedGainMapXmp {
[INFO] [stdout] 251 | |     /// Parsed gain-map metadata.
[INFO] [stdout] 252 | |     pub metadata: GainMapMetadata,
[INFO] [stdout] 253 | |     /// Gain-map JPEG length recovered from container-directory XMP, if present.
[INFO] [stdout] 254 | |     pub gain_map_jpeg_len: Option<usize>,
[INFO] [stdout] 255 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Parsed `hdrgm:*` XMP payload.`
[INFO] [stdout]     = help: ends near `Parsed `hdrgm:*` XMP payload.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | / pub struct PreparePrimaryOptions {
[INFO] [stdout] 479 | |     /// Target gamut for the SDR primary image.
[INFO] [stdout] 480 | |     ///
[INFO] [stdout] 481 | |     /// The current high-level helper supports [`ColorGamut::Bt709`] and
[INFO] [stdout] ...   |
[INFO] [stdout] 500 | |     pub target_peak_nits: f32,
[INFO] [stdout] 501 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Options for deriving an SDR primary image from source pixels.`
[INFO] [stdout]     = help: ends near `Options for deriving an SDR primary image from source pixels.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:515:1
[INFO] [stdout]     |
[INFO] [stdout] 515 | / pub struct PreparedPrimary {
[INFO] [stdout] 516 | |     /// Prepared SDR primary image pixels.
[INFO] [stdout] 517 | |     ///
[INFO] [stdout] 518 | |     /// The image is always `Rgb8` with [`ColorTransfer::Srgb`].
[INFO] [stdout] ...   |
[INFO] [stdout] 524 | |     pub metadata: PrimaryMetadata,
[INFO] [stdout] 525 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Prepared SDR primary image and matching primary-JPEG metadata.`
[INFO] [stdout]     = help: ends near `Prepared SDR primary image and matching primary-JPEG metadata.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:116:1
[INFO] [stdout]     |
[INFO] [stdout] 116 | / pub struct PrimaryMetadata {
[INFO] [stdout] 117 | |     /// Primary-image color signaling and ICC payload.
[INFO] [stdout] 118 | |     pub color: ColorMetadata,
[INFO] [stdout] 119 | |     /// EXIF payload to embed in or extract from the primary JPEG.
[INFO] [stdout] 120 | |     pub exif: Option<Vec<u8>>,
[INFO] [stdout] 121 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Primary-JPEG metadata handled by the crate.`
[INFO] [stdout]     = help: ends near `Primary-JPEG metadata handled by the crate.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:562:1
[INFO] [stdout]     |
[INFO] [stdout] 562 | / pub struct UltraHdrEncodeOptions {
[INFO] [stdout] 563 | |     /// Primary JPEG encoding options.
[INFO] [stdout] 564 | |     ///
[INFO] [stdout] 565 | |     /// [`EncodeOptions::gain_map`] must be `None`; the gain map is computed
[INFO] [stdout] ...   |
[INFO] [stdout] 584 | |     pub gain_map_compression: CompressionEffort,
[INFO] [stdout] 585 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Convenience options for one-shot Ultra HDR packaging.`
[INFO] [stdout]     = help: ends near `SDR inputs.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:562:1
[INFO] [stdout]     |
[INFO] [stdout] 562 | / pub struct UltraHdrEncodeOptions {
[INFO] [stdout] 563 | |     /// Primary JPEG encoding options.
[INFO] [stdout] 564 | |     ///
[INFO] [stdout] 565 | |     /// [`EncodeOptions::gain_map`] must be `None`; the gain map is computed
[INFO] [stdout] ...   |
[INFO] [stdout] 584 | |     pub gain_map_compression: CompressionEffort,
[INFO] [stdout] 585 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `High-level convenience options for direct Ultra HDR packaging from HDR and`
[INFO] [stdout]     = help: ends near `High-level convenience options for direct Ultra HDR packaging from HDR and`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:157:1
[INFO] [stdout]     |
[INFO] [stdout] 157 | / pub struct UltraHdrMetadata {
[INFO] [stdout] 158 | |     /// Effective XMP payload used for Ultra HDR metadata parsing.
[INFO] [stdout] 159 | |     ///
[INFO] [stdout] 160 | |     /// For spec-shaped files this may come from the gain-map JPEG rather than
[INFO] [stdout] ...   |
[INFO] [stdout] 177 | |     pub gain_map_metadata_source: Option<GainMapMetadataSource>,
[INFO] [stdout] 178 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Structured effective Ultra HDR metadata resolved by the crate.`
[INFO] [stdout]     = help: ends near `Structured effective Ultra HDR metadata resolved by the crate.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/types.rs:377:1
[INFO] [stdout]     |
[INFO] [stdout] 377 | / pub struct UltraHdrMetadataEmission {
[INFO] [stdout] 378 | |     /// Whether to emit the primary JPEG's container/directory XMP.
[INFO] [stdout] 379 | |     ///
[INFO] [stdout] 380 | |     /// When enabled, this is the primary-side XMP that advertises the bundled
[INFO] [stdout] ...   |
[INFO] [stdout] 399 | |     pub emit_iso_21496_1: bool,
[INFO] [stdout] 400 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Opt-out controls for Ultra HDR metadata emission during gain-map packaging.`
[INFO] [stdout]     = help: ends near `Opt-out controls for Ultra HDR metadata emission during gain-map packaging.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not document `ultrajpeg`
[INFO] running `Command { std: "docker" "inspect" "fde381c8bda8c8d0fa6f72a1a56802f2573f526b9ecf62cc44a1f54f1f1a36c8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fde381c8bda8c8d0fa6f72a1a56802f2573f526b9ecf62cc44a1f54f1f1a36c8", kill_on_drop: false }`
[INFO] [stdout] fde381c8bda8c8d0fa6f72a1a56802f2573f526b9ecf62cc44a1f54f1f1a36c8
