[INFO] cloning repository https://github.com/Xiphoseer/sdo-tool [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Xiphoseer/sdo-tool" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FXiphoseer%2Fsdo-tool", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FXiphoseer%2Fsdo-tool'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d938dbb4c3322c4ea3c84693c8b7146251cfc30b [INFO] checking Xiphoseer/sdo-tool against try#5d9095c550fcec9e458ce8d6b0c04a217641db66 for pr-77153 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FXiphoseer%2Fsdo-tool" "/workspace/builds/worker-4/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Xiphoseer/sdo-tool on toolchain 5d9095c550fcec9e458ce8d6b0c04a217641db66 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+5d9095c550fcec9e458ce8d6b0c04a217641db66" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Xiphoseer/sdo-tool [INFO] removed workspace from git repo https://github.com/Xiphoseer/sdo-tool [INFO] finished tweaking git repo https://github.com/Xiphoseer/sdo-tool [INFO] tweaked toml for git repo https://github.com/Xiphoseer/sdo-tool written to /workspace/builds/worker-4/source/Cargo.toml [INFO] crate git repo https://github.com/Xiphoseer/sdo-tool already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+5d9095c550fcec9e458ce8d6b0c04a217641db66" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] error: the lock file /workspace/builds/worker-4/source/Cargo.lock needs to be updated but --locked was passed to prevent this [INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag. [INFO] the lockfile is outdated, regenerating it [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+5d9095c550fcec9e458ce8d6b0c04a217641db66" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+5d9095c550fcec9e458ce8d6b0c04a217641db66" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded nom v6.0.0-alpha2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+5d9095c550fcec9e458ce8d6b0c04a217641db66" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 28a4ccebcd75cf2f83579613f58eecb9f4d9eedfff9bce48c65e44eb79bd6f46 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "28a4ccebcd75cf2f83579613f58eecb9f4d9eedfff9bce48c65e44eb79bd6f46", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "28a4ccebcd75cf2f83579613f58eecb9f4d9eedfff9bce48c65e44eb79bd6f46", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "28a4ccebcd75cf2f83579613f58eecb9f4d9eedfff9bce48c65e44eb79bd6f46", kill_on_drop: false }` [INFO] [stdout] 28a4ccebcd75cf2f83579613f58eecb9f4d9eedfff9bce48c65e44eb79bd6f46 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+5d9095c550fcec9e458ce8d6b0c04a217641db66" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f613686df5d8d820351792c0e9a1e324b21dc5c25f35c89d3307854dd3b2536a [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "f613686df5d8d820351792c0e9a1e324b21dc5c25f35c89d3307854dd3b2536a", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling version_check v0.9.2 [INFO] [stderr] Compiling proc-macro2 v1.0.23 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling libc v0.2.77 [INFO] [stderr] Compiling ryu v1.0.5 [INFO] [stderr] Checking unicode-width v0.1.8 [INFO] [stderr] Compiling lexical-core v0.7.4 [INFO] [stderr] Checking static_assertions v1.1.0 [INFO] [stderr] Compiling anyhow v1.0.32 [INFO] [stderr] Checking vec_map v0.8.2 [INFO] [stderr] Checking itoa v0.4.6 [INFO] [stderr] Checking arrayvec v0.5.1 [INFO] [stderr] Checking bytemuck v1.4.1 [INFO] [stderr] Checking crc32fast v1.2.0 [INFO] [stderr] Checking regex-automata v0.1.9 [INFO] [stderr] Checking deflate v0.8.6 [INFO] [stderr] Checking csv-core v0.1.10 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking bstr v0.2.13 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling nom v6.0.0-alpha2 [INFO] [stderr] Compiling num-traits v0.2.12 [INFO] [stderr] Compiling num-integer v0.1.43 [INFO] [stderr] Compiling num-rational v0.3.0 [INFO] [stderr] Compiling num-iter v0.1.41 [INFO] [stderr] Checking png v0.16.7 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking dirs v1.0.5 [INFO] [stderr] Checking clap v2.33.3 [INFO] [stderr] Checking csv v1.1.3 [INFO] [stderr] Checking term v0.5.2 [INFO] [stderr] Compiling syn v1.0.42 [INFO] [stderr] Checking prettytable-rs v0.8.0 [INFO] [stderr] Checking image v0.23.10 [INFO] [stderr] Compiling thiserror-impl v1.0.20 [INFO] [stderr] Compiling structopt-derive v0.4.11 [INFO] [stderr] Checking structopt v0.3.18 [INFO] [stderr] Checking thiserror v1.0.20 [INFO] [stderr] Checking sdo-tool v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated function `nom::number::complete::le_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/dvips.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | number::complete::le_u8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::le_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/dvips.rs:184:26 [INFO] [stdout] | [INFO] [stdout] 184 | let (input, width) = le_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::le_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/dvips.rs:185:27 [INFO] [stdout] | [INFO] [stdout] 185 | let (input, height) = le_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::le_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/dvips.rs:186:29 [INFO] [stdout] | [INFO] [stdout] 186 | let (input, x_offset) = le_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::le_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/dvips.rs:187:29 [INFO] [stdout] | [INFO] [stdout] 187 | let (input, y_offset) = le_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::le_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/dvips.rs:188:28 [INFO] [stdout] | [INFO] [stdout] 188 | let (input, delta_x) = le_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/editor.rs:6:32 [INFO] [stdout] | [INFO] [stdout] 6 | number::complete::{be_u32, be_u8}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/editor.rs:141:24 [INFO] [stdout] | [INFO] [stdout] 141 | let (input, top) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/editor.rs:142:27 [INFO] [stdout] | [INFO] [stdout] 142 | let (input, height) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/editor.rs:143:26 [INFO] [stdout] | [INFO] [stdout] 143 | let (input, width) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/editor.rs:144:23 [INFO] [stdout] | [INFO] [stdout] 144 | let (input, _d) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/printer.rs:7:32 [INFO] [stdout] | [INFO] [stdout] 7 | number::complete::{be_u32, be_u8}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/printer.rs:75:24 [INFO] [stdout] | [INFO] [stdout] 75 | let (input, top) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/printer.rs:76:27 [INFO] [stdout] | [INFO] [stdout] 76 | let (input, height) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/printer.rs:77:26 [INFO] [stdout] | [INFO] [stdout] 77 | let (input, width) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/printer.rs:78:23 [INFO] [stdout] | [INFO] [stdout] 78 | let (input, _d) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::le_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/dvips.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | number::complete::le_u8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::le_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/dvips.rs:184:26 [INFO] [stdout] | [INFO] [stdout] 184 | let (input, width) = le_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::le_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/dvips.rs:185:27 [INFO] [stdout] | [INFO] [stdout] 185 | let (input, height) = le_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::le_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/dvips.rs:186:29 [INFO] [stdout] | [INFO] [stdout] 186 | let (input, x_offset) = le_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::le_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/dvips.rs:187:29 [INFO] [stdout] | [INFO] [stdout] 187 | let (input, y_offset) = le_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::le_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/dvips.rs:188:28 [INFO] [stdout] | [INFO] [stdout] 188 | let (input, delta_x) = le_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/editor.rs:6:32 [INFO] [stdout] | [INFO] [stdout] 6 | number::complete::{be_u32, be_u8}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/editor.rs:141:24 [INFO] [stdout] | [INFO] [stdout] 141 | let (input, top) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/editor.rs:142:27 [INFO] [stdout] | [INFO] [stdout] 142 | let (input, height) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/editor.rs:143:26 [INFO] [stdout] | [INFO] [stdout] 143 | let (input, width) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/editor.rs:144:23 [INFO] [stdout] | [INFO] [stdout] 144 | let (input, _d) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/printer.rs:7:32 [INFO] [stdout] | [INFO] [stdout] 7 | number::complete::{be_u32, be_u8}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/printer.rs:75:24 [INFO] [stdout] | [INFO] [stdout] 75 | let (input, top) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/printer.rs:76:27 [INFO] [stdout] | [INFO] [stdout] 76 | let (input, height) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/printer.rs:77:26 [INFO] [stdout] | [INFO] [stdout] 77 | let (input, width) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::number::complete::be_u8`: Endianness does not apply to 1 byte numbers. Please use nom::number::complete::u8 instead. [INFO] [stdout] --> src/font/printer.rs:78:23 [INFO] [stdout] | [INFO] [stdout] 78 | let (input, _d) = be_u8(input)?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/cli/ps.rs:55:31 [INFO] [stdout] | [INFO] [stdout] 53 | let font = match parse_ls30(&buffer) { [INFO] [stdout] | ------------------- this expression has type `std::result::Result<(&[u8], PSet<'_>), nom::Err>>` [INFO] [stdout] 54 | Ok((_, fa)) => fa, [INFO] [stdout] 55 | Err(nom::Err::Failure((rest, e))) => { [INFO] [stdout] | ^^^^^^^^^ expected struct `nom::error::Error`, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected struct `nom::error::Error<&[u8]>` [INFO] [stdout] found tuple `(_, _)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/cli/ps.rs:62:29 [INFO] [stdout] | [INFO] [stdout] 53 | let font = match parse_ls30(&buffer) { [INFO] [stdout] | ------------------- this expression has type `std::result::Result<(&[u8], PSet<'_>), nom::Err>>` [INFO] [stdout] ... [INFO] [stdout] 62 | Err(nom::Err::Error((rest, e))) => { [INFO] [stdout] | ^^^^^^^^^ expected struct `nom::error::Error`, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected struct `nom::error::Error<&[u8]>` [INFO] [stdout] found tuple `(_, _)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/cli/ps.rs:83:31 [INFO] [stdout] | [INFO] [stdout] 81 | let fa = match parse_dvips_bitmap_font(&buffer) { [INFO] [stdout] | -------------------------------- this expression has type `std::result::Result<(&[u8], Font), nom::Err>>` [INFO] [stdout] 82 | Ok((_, fa)) => fa, [INFO] [stdout] 83 | Err(nom::Err::Failure((rest, e))) => { [INFO] [stdout] | ^^^^^^^^^ expected struct `nom::error::Error`, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected struct `nom::error::Error<&[u8]>` [INFO] [stdout] found tuple `(_, _)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/cli/ps.rs:90:29 [INFO] [stdout] | [INFO] [stdout] 81 | let fa = match parse_dvips_bitmap_font(&buffer) { [INFO] [stdout] | -------------------------------- this expression has type `std::result::Result<(&[u8], Font), nom::Err>>` [INFO] [stdout] ... [INFO] [stdout] 90 | Err(nom::Err::Error((rest, e))) => { [INFO] [stdout] | ^^^^^^^^^ expected struct `nom::error::Error`, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected struct `nom::error::Error<&[u8]>` [INFO] [stdout] found tuple `(_, _)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/cli/ps.rs:55:31 [INFO] [stdout] | [INFO] [stdout] 53 | let font = match parse_ls30(&buffer) { [INFO] [stdout] | ------------------- this expression has type `std::result::Result<(&[u8], PSet<'_>), nom::Err>>` [INFO] [stdout] 54 | Ok((_, fa)) => fa, [INFO] [stdout] 55 | Err(nom::Err::Failure((rest, e))) => { [INFO] [stdout] | ^^^^^^^^^ expected struct `nom::error::Error`, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected struct `nom::error::Error<&[u8]>` [INFO] [stdout] found tuple `(_, _)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/cli/ps.rs:62:29 [INFO] [stdout] | [INFO] [stdout] 53 | let font = match parse_ls30(&buffer) { [INFO] [stdout] | ------------------- this expression has type `std::result::Result<(&[u8], PSet<'_>), nom::Err>>` [INFO] [stdout] ... [INFO] [stdout] 62 | Err(nom::Err::Error((rest, e))) => { [INFO] [stdout] | ^^^^^^^^^ expected struct `nom::error::Error`, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected struct `nom::error::Error<&[u8]>` [INFO] [stdout] found tuple `(_, _)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/cli/ps.rs:83:31 [INFO] [stdout] | [INFO] [stdout] 81 | let fa = match parse_dvips_bitmap_font(&buffer) { [INFO] [stdout] | -------------------------------- this expression has type `std::result::Result<(&[u8], Font), nom::Err>>` [INFO] [stdout] 82 | Ok((_, fa)) => fa, [INFO] [stdout] 83 | Err(nom::Err::Failure((rest, e))) => { [INFO] [stdout] | ^^^^^^^^^ expected struct `nom::error::Error`, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected struct `nom::error::Error<&[u8]>` [INFO] [stdout] found tuple `(_, _)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/cli/ps.rs:90:29 [INFO] [stdout] | [INFO] [stdout] 81 | let fa = match parse_dvips_bitmap_font(&buffer) { [INFO] [stdout] | -------------------------------- this expression has type `std::result::Result<(&[u8], Font), nom::Err>>` [INFO] [stdout] ... [INFO] [stdout] 90 | Err(nom::Err::Error((rest, e))) => { [INFO] [stdout] | ^^^^^^^^^ expected struct `nom::error::Error`, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected struct `nom::error::Error<&[u8]>` [INFO] [stdout] found tuple `(_, _)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/cli/sdoc/mod.rs:984:31 [INFO] [stdout] | [INFO] [stdout] 982 | let (rest, sdoc) = match parse_sdoc0001_container(buffer) { [INFO] [stdout] | -------------------------------- this expression has type `std::result::Result<(&[u8], SDocContainer<'_>), nom::Err>>` [INFO] [stdout] 983 | Ok(x) => x, [INFO] [stdout] 984 | Err(nom::Err::Failure((rest, kind))) => { [INFO] [stdout] | ^^^^^^^^^^^^ expected struct `nom::error::Error`, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected struct `nom::error::Error<&[u8]>` [INFO] [stdout] found tuple `(_, _)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/cli/sdoc/mod.rs:987:29 [INFO] [stdout] | [INFO] [stdout] 982 | let (rest, sdoc) = match parse_sdoc0001_container(buffer) { [INFO] [stdout] | -------------------------------- this expression has type `std::result::Result<(&[u8], SDocContainer<'_>), nom::Err>>` [INFO] [stdout] ... [INFO] [stdout] 987 | Err(nom::Err::Error((rest, kind))) => { [INFO] [stdout] | ^^^^^^^^^^^^ expected struct `nom::error::Error`, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected struct `nom::error::Error<&[u8]>` [INFO] [stdout] found tuple `(_, _)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/cli/sdoc/mod.rs:984:31 [INFO] [stdout] | [INFO] [stdout] 982 | let (rest, sdoc) = match parse_sdoc0001_container(buffer) { [INFO] [stdout] | -------------------------------- this expression has type `std::result::Result<(&[u8], SDocContainer<'_>), nom::Err>>` [INFO] [stdout] 983 | Ok(x) => x, [INFO] [stdout] 984 | Err(nom::Err::Failure((rest, kind))) => { [INFO] [stdout] | ^^^^^^^^^^^^ expected struct `nom::error::Error`, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected struct `nom::error::Error<&[u8]>` [INFO] [stdout] found tuple `(_, _)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/cli/sdoc/mod.rs:987:29 [INFO] [stdout] | [INFO] [stdout] 982 | let (rest, sdoc) = match parse_sdoc0001_container(buffer) { [INFO] [stdout] | -------------------------------- this expression has type `std::result::Result<(&[u8], SDocContainer<'_>), nom::Err>>` [INFO] [stdout] ... [INFO] [stdout] 987 | Err(nom::Err::Error((rest, kind))) => { [INFO] [stdout] | ^^^^^^^^^^^^ expected struct `nom::error::Error`, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected struct `nom::error::Error<&[u8]>` [INFO] [stdout] found tuple `(_, _)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err<(&[u8], nom::error::ErrorKind)>` [INFO] [stdout] --> src/images/imc.rs:97:44 [INFO] [stdout] | [INFO] [stdout] 95 | pub fn parse_imc(input: &[u8]) -> Result> { [INFO] [stdout] | ------------------------------------------------- expected `nom::Err<(&[u8], nom::error::ErrorKind)>` because of this [INFO] [stdout] 96 | let (input, _) = tag(b"bimc0002")(input)?; [INFO] [stdout] 97 | let (_input, image) = decode_imc(input)?; [INFO] [stdout] | ^ the trait `From>>` is not implemented for `nom::Err<(&[u8], nom::error::ErrorKind)>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err<(&[u8], nom::error::ErrorKind)>` [INFO] [stdout] --> src/images/imc.rs:97:44 [INFO] [stdout] | [INFO] [stdout] 95 | pub fn parse_imc(input: &[u8]) -> Result> { [INFO] [stdout] | ------------------------------------------------- expected `nom::Err<(&[u8], nom::error::ErrorKind)>` because of this [INFO] [stdout] 96 | let (input, _) = tag(b"bimc0002")(input)?; [INFO] [stdout] 97 | let (_input, image) = decode_imc(input)?; [INFO] [stdout] | ^ the trait `From>>` is not implemented for `nom::Err<(&[u8], nom::error::ErrorKind)>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:136:34 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 136 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:136:34 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 136 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:139:42 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 139 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:139:42 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 139 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:142:46 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 142 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:145:46 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 145 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:160:50 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 160 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:142:46 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 142 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:163:50 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 163 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:145:46 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 145 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:168:50 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 168 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:171:50 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 171 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:160:50 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 160 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:163:50 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 163 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:168:50 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 168 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `nom::Err>` [INFO] [stdout] --> src/images/imc.rs:171:50 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn decode_imc(src: &[u8]) -> IResult<&[u8], MonochromeScreen> { [INFO] [stdout] | -------------------------------- expected `nom::Err>` because of this [INFO] [stdout] ... [INFO] [stdout] 171 | if next!(bit_iter, state)? { [INFO] [stdout] | ^ the trait `From>` is not implemented for `nom::Err>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = note: required by `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/sdoc.rs:321:36 [INFO] [stdout] | [INFO] [stdout] 321 | Err(e) => Some(Err(e)), [INFO] [stdout] | ^ expected tuple, found struct `nom::error::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `nom::Err<(&[u8], nom::error::ErrorKind)>` [INFO] [stdout] found enum `nom::Err>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/sdoc.rs:321:36 [INFO] [stdout] | [INFO] [stdout] 321 | Err(e) => Some(Err(e)), [INFO] [stdout] | ^ expected tuple, found struct `nom::error::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `nom::Err<(&[u8], nom::error::ErrorKind)>` [INFO] [stdout] found enum `nom::Err>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/sdoc.rs:449:9 [INFO] [stdout] | [INFO] [stdout] 448 | pub fn _parse(self) -> Result> { [INFO] [stdout] | --------------------------------------------- expected `std::result::Result>` because of return type [INFO] [stdout] 449 | parse_line(self.data).map(|(_, line)| line) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected tuple, found struct `nom::error::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `std::result::Result<_, nom::Err<(&'a [u8], nom::error::ErrorKind)>>` [INFO] [stdout] found enum `std::result::Result<_, nom::Err>>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/sdoc.rs:449:9 [INFO] [stdout] | [INFO] [stdout] 448 | pub fn _parse(self) -> Result> { [INFO] [stdout] | --------------------------------------------- expected `std::result::Result>` because of return type [INFO] [stdout] 449 | parse_line(self.data).map(|(_, line)| line) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected tuple, found struct `nom::error::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `std::result::Result<_, nom::Err<(&'a [u8], nom::error::ErrorKind)>>` [INFO] [stdout] found enum `std::result::Result<_, nom::Err>>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/sdoc.rs:508:49 [INFO] [stdout] | [INFO] [stdout] 508 | Ok((rest, ())) => Err(nom::Err::Failure((rest, ErrorKind::Eof))), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ expected struct `nom::error::Error`, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected struct `nom::error::Error<&[u8]>` [INFO] [stdout] found tuple `(&[u8], nom::error::ErrorKind)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/sdoc.rs:508:49 [INFO] [stdout] | [INFO] [stdout] 508 | Ok((rest, ())) => Err(nom::Err::Failure((rest, ErrorKind::Eof))), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ expected struct `nom::error::Error`, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected struct `nom::error::Error<&[u8]>` [INFO] [stdout] found tuple `(&[u8], nom::error::ErrorKind)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 18 previous errors; 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0308. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] error: aborting due to 18 previous errors; 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0308. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `sdo-tool` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "f613686df5d8d820351792c0e9a1e324b21dc5c25f35c89d3307854dd3b2536a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f613686df5d8d820351792c0e9a1e324b21dc5c25f35c89d3307854dd3b2536a", kill_on_drop: false }` [INFO] [stdout] f613686df5d8d820351792c0e9a1e324b21dc5c25f35c89d3307854dd3b2536a