[INFO] cloning repository https://github.com/suhanyujie/my-parser-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/suhanyujie/my-parser-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsuhanyujie%2Fmy-parser-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsuhanyujie%2Fmy-parser-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 28f6eff694fa1776da702f65718af700a45edeed
[INFO] testing suhanyujie/my-parser-rs against master#2fd6efc32704647e64d3d646d21c4c68eae100e4 for pr-149852-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsuhanyujie%2Fmy-parser-rs" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-0-tc1/source/.cargo/config
[INFO] started tweaking git repo https://github.com/suhanyujie/my-parser-rs
[INFO] finished tweaking git repo https://github.com/suhanyujie/my-parser-rs
[INFO] tweaked toml for git repo https://github.com/suhanyujie/my-parser-rs written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/suhanyujie/my-parser-rs on toolchain 2fd6efc32704647e64d3d646d21c4c68eae100e4
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/suhanyujie/my-parser-rs 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" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded pin-project-lite v0.1.7
[INFO] [stderr]   Downloaded quote v1.0.6
[INFO] [stderr]   Downloaded tokio-macros v0.2.5
[INFO] [stderr]   Downloaded hermit-abi v0.1.13
[INFO] [stderr]   Downloaded signal-hook-registry v1.2.0
[INFO] [stderr]   Downloaded thread_local v1.1.3
[INFO] [stderr]   Downloaded humansize v1.1.1
[INFO] [stderr]   Downloaded proc-macro-error-attr v1.0.2
[INFO] [stderr]   Downloaded pest_generator v2.1.3
[INFO] [stderr]   Downloaded proc-macro-error v1.0.2
[INFO] [stderr]   Downloaded structopt-derive v0.4.7
[INFO] [stderr]   Downloaded unic-ucd-segment v0.9.0
[INFO] [stderr]   Downloaded minimal-lexical v0.1.2
[INFO] [stderr]   Downloaded globwalk v0.8.1
[INFO] [stderr]   Downloaded serde_derive v1.0.130
[INFO] [stderr]   Downloaded socket2 v0.3.12
[INFO] [stderr]   Downloaded structopt v0.3.14
[INFO] [stderr]   Downloaded clap v2.33.1
[INFO] [stderr]   Downloaded syn v1.0.78
[INFO] [stderr]   Downloaded deunicode v0.4.3
[INFO] [stderr]   Downloaded bstr v0.2.15
[INFO] [stderr]   Downloaded tokio v0.2.21
[INFO] [stderr]   Downloaded mio v0.6.22
[INFO] [stderr]   Downloaded futures-core v0.3.5
[INFO] [stderr]   Downloaded chrono-tz v0.5.3
[INFO] [stderr]   Downloaded nom v7.0.0
[INFO] [stderr]   Downloaded tera v1.12.1
[INFO] [stderr]   Downloaded globset v0.4.8
[INFO] [stderr]   Downloaded pest v2.1.3
[INFO] [stderr]   Downloaded pest_derive v2.1.0
[INFO] [stderr]   Downloaded slug v0.1.4
[INFO] [stderr]   Downloaded unic-segment v0.9.0
[INFO] [stderr]   Downloaded bytes v0.5.4
[INFO] [stderr]   Downloaded mio-named-pipes v0.1.6
[INFO] [stderr]   Downloaded net2 v0.2.34
[INFO] [stderr]   Downloaded regex v1.4.6
[INFO] [stderr]   Downloaded arc-swap v0.4.7
[INFO] [stderr]   Downloaded proc-macro2 v1.0.29
[INFO] [stderr]   Downloaded ignore v0.4.18
[INFO] [stderr]   Downloaded ucd-trie v0.1.3
[INFO] [stderr]   Downloaded pest_meta v2.1.3
[INFO] [stderr]   Downloaded memchr v2.3.3
[INFO] [stderr]   Downloaded miow v0.3.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 668976e77c490a2e3af1aca83912ecebb526416a0591de82bd3d163a578977ed
[INFO] running `Command { std: "docker" "start" "-a" "668976e77c490a2e3af1aca83912ecebb526416a0591de82bd3d163a578977ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "668976e77c490a2e3af1aca83912ecebb526416a0591de82bd3d163a578977ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "668976e77c490a2e3af1aca83912ecebb526416a0591de82bd3d163a578977ed", kill_on_drop: false }`
[INFO] [stdout] 668976e77c490a2e3af1aca83912ecebb526416a0591de82bd3d163a578977ed
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ffbf2f3ae0a7165f108af2ee5065fce9aa5e7bf04686f2d8171e0c7a6cc6ca78
[INFO] running `Command { std: "docker" "start" "-a" "ffbf2f3ae0a7165f108af2ee5065fce9aa5e7bf04686f2d8171e0c7a6cc6ca78", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.71
[INFO] [stderr]    Compiling proc-macro2 v1.0.29
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling memchr v2.3.3
[INFO] [stderr]    Compiling syn v1.0.78
[INFO] [stderr]    Compiling version_check v0.9.2
[INFO] [stderr]    Compiling cfg-if v0.1.9
[INFO] [stderr]    Compiling regex-syntax v0.6.25
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]    Compiling crossbeam-utils v0.8.5
[INFO] [stderr]    Compiling serde_derive v1.0.130
[INFO] [stderr]    Compiling ucd-trie v0.1.3
[INFO] [stderr]    Compiling serde v1.0.130
[INFO] [stderr]    Compiling ryu v1.0.5
[INFO] [stderr]    Compiling unic-char-range v0.9.0
[INFO] [stderr]    Compiling maplit v1.0.2
[INFO] [stderr]    Compiling unic-common v0.9.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling once_cell v1.8.0
[INFO] [stderr]    Compiling unic-ucd-version v0.9.0
[INFO] [stderr]    Compiling unic-char-property v0.9.0
[INFO] [stderr]    Compiling unicode-segmentation v1.6.0
[INFO] [stderr]    Compiling walkdir v2.3.2
[INFO] [stderr]    Compiling minimal-lexical v0.1.2
[INFO] [stderr]    Compiling pest v2.1.3
[INFO] [stderr]    Compiling aho-corasick v0.7.15
[INFO] [stderr]    Compiling bstr v0.2.15
[INFO] [stderr]    Compiling thread_local v1.1.3
[INFO] [stderr]    Compiling slab v0.4.2
[INFO] [stderr]    Compiling serde_json v1.0.68
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.2
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]    Compiling proc-macro-error v1.0.2
[INFO] [stderr]    Compiling unicode-width v0.1.7
[INFO] [stderr]    Compiling getrandom v0.2.3
[INFO] [stderr]    Compiling net2 v0.2.34
[INFO] [stderr]    Compiling quote v1.0.6
[INFO] [stderr]    Compiling rand_core v0.6.3
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling nom v7.0.0
[INFO] [stderr]    Compiling heck v0.3.1
[INFO] [stderr]    Compiling unic-ucd-segment v0.9.0
[INFO] [stderr]    Compiling arc-swap v0.4.7
[INFO] [stderr]    Compiling deunicode v0.4.3
[INFO] [stderr]    Compiling mio v0.6.22
[INFO] [stderr]    Compiling itoa v0.4.8
[INFO] [stderr]    Compiling slug v0.1.4
[INFO] [stderr]    Compiling rand v0.8.4
[INFO] [stderr]    Compiling clap v2.33.1
[INFO] [stderr]    Compiling num_cpus v1.13.0
[INFO] [stderr]    Compiling futures-core v0.3.5
[INFO] [stderr]    Compiling humansize v1.1.1
[INFO] [stderr]    Compiling percent-encoding v2.1.0
[INFO] [stderr]    Compiling pin-project-lite v0.1.7
[INFO] [stderr]    Compiling signal-hook-registry v1.2.0
[INFO] [stderr]    Compiling unic-segment v0.9.0
[INFO] [stderr]    Compiling bytes v0.5.4
[INFO] [stderr]    Compiling bytes v1.1.0
[INFO] [stderr]    Compiling chrono v0.4.19
[INFO] [stderr]    Compiling pest_meta v2.1.3
[INFO] [stderr]    Compiling mio-uds v0.6.8
[INFO] [stderr]    Compiling regex v1.4.6
[INFO] [stderr]    Compiling syn-mid v0.5.0
[INFO] [stderr]    Compiling pest_generator v2.1.3
[INFO] [stderr]    Compiling parse-zoneinfo v0.3.0
[INFO] [stderr]    Compiling globset v0.4.8
[INFO] [stderr]    Compiling tokio-macros v0.2.5
[INFO] [stderr]    Compiling ignore v0.4.18
[INFO] [stderr]    Compiling tokio v0.2.21
[INFO] [stderr]    Compiling chrono-tz v0.5.3
[INFO] [stderr]    Compiling pest_derive v2.1.0
[INFO] [stderr]    Compiling structopt-derive v0.4.7
[INFO] [stderr]    Compiling globwalk v0.8.1
[INFO] [stderr]    Compiling structopt v0.3.14
[INFO] [stderr]    Compiling tera v1.12.1
[INFO] [stderr]    Compiling my-parser v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:11
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:19
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:31
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:40
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |                                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:53
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |                                                     ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:64
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |                                                                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:21
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:33
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:43
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                                         ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:56
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                                                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:65
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                                                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:78
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                                                                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:88
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                                                                                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/http.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Err`, `ErrorKind`, `VerboseError`, and `convert_error`
[INFO] [stdout]   --> src/json.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 |     error::{context, convert_error, ContextError, ErrorKind, ParseError, VerboseError},
[INFO] [stdout]    |                      ^^^^^^^^^^^^^                ^^^^^^^^^              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     Err, IResult,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/json.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 133 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/markdown.rs:357:9
[INFO] [stdout]     |
[INFO] [stdout] 357 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContextError`, `Err`, `ErrorKind`, `IResult`, `ParseError`, `VerboseError`, `alphanumeric1 as alphanumeric`, `branch::alt`, `char`, `context`, `convert_error`, `cut`, `delimited`, `escaped`, `line_ending`, `many1`, `many_m_n`, `map`, `multispace1`, `not_line_ending`, `number::complete::double`, `one_of`, `opt`, `pair`, `preceded`, `separated_list0`, `separated_pair`, `tag`, `take_while`, `terminated`, and `value`
[INFO] [stdout]   --> src/markdown_nom.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  6 |     branch::alt,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]  7 |     bytes::complete::{escaped, tag, take_while},
[INFO] [stdout]    |                       ^^^^^^^  ^^^  ^^^^^^^^^^
[INFO] [stdout]  8 |     character::complete::{
[INFO] [stdout]  9 |         alphanumeric1 as alphanumeric, char, line_ending, multispace1, not_line_ending, one_of,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 10 |     },
[INFO] [stdout] 11 |     combinator::{cut, map, opt, value},
[INFO] [stdout]    |                  ^^^  ^^^  ^^^  ^^^^^
[INFO] [stdout] 12 |     error::{context, convert_error, ContextError, ErrorKind, ParseError, VerboseError},
[INFO] [stdout]    |             ^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 13 |     multi::{many1, many_m_n, separated_list0},
[INFO] [stdout]    |             ^^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 14 |     number::complete::double,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     sequence::{delimited, pair, preceded, separated_pair, terminated},
[INFO] [stdout]    |                ^^^^^^^^^  ^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 16 |     Err, IResult,
[INFO] [stdout]    |     ^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/markdown_nom.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/markdown_nom.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `many0`, `map_parser`, `pair`, and `terminated`
[INFO] [stdout]  --> src/nom1.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 |     combinator::{map_parser, map_res},
[INFO] [stdout]   |                  ^^^^^^^^^^
[INFO] [stdout] 8 |     multi::{many0, many1},
[INFO] [stdout]   |             ^^^^^
[INFO] [stdout] 9 |     sequence::{delimited, pair, terminated, tuple},
[INFO] [stdout]   |                           ^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::whitespace_char`
[INFO] [stdout]   --> src/nom1.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::whitespace_char;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::combinator::map as nom_map`
[INFO] [stdout]    --> src/parse_string.rs:287:5
[INFO] [stdout]     |
[INFO] [stdout] 287 | use nom::combinator::map as nom_map;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Err`, `Parser`, and `error::ErrorKind`
[INFO] [stdout]    --> src/parse_string.rs:296:11
[INFO] [stdout]     |
[INFO] [stdout] 296 | use nom::{error::ErrorKind, Err, Parser};
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^  ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufMut` and `BytesMut`
[INFO] [stdout]  --> src/redis.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use bytes::{BufMut, BytesMut};
[INFO] [stdout]   |             ^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::prelude::*`
[INFO] [stdout]  --> src/redis.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/redis.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parse_str_with_escaped_and_combine`
[INFO] [stdout]   --> src/sql1.rs:97:5
[INFO] [stdout]    |
[INFO] [stdout] 97 |     parse_str_with_escaped_and_combine, parse_str_with_escaped_and_combine_in_single_quote,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `many0`, `preceded`, and `take_while1`
[INFO] [stdout]    --> src/sql1.rs:101:41
[INFO] [stdout]     |
[INFO] [stdout] 101 |     bytes::complete::{tag, tag_no_case, take_while1},
[INFO] [stdout]     |                                         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     multi::{fold_many1, many0, many1, many_m_n},
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 107 |     sequence::{preceded, tuple},
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OneColumn`
[INFO] [stdout]   --> src/sql2_render.rs:17:33
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::sql1::{DataTypeEnum, OneColumn};
[INFO] [stdout]    |                                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::to_string`
[INFO] [stdout]   --> src/sql2_render.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use serde_json::to_string;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::Error`
[INFO] [stdout]   --> src/sql2_render.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use serde_json::Error;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate-level attribute should be in the root module
[INFO] [stdout]  --> src/markdown.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(unicode_internals)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/redis.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let mut stream = TcpStream::connect("127.0.0.1:6379").await?;
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `level` is assigned to, but never used
[INFO] [stdout]    --> src/markdown.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 300 |     let mut level: u8 = 0;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_level` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `level` is never read
[INFO] [stdout]    --> src/markdown.rs:305:13
[INFO] [stdout]     |
[INFO] [stdout] 305 |             level += 1;
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `level` is never read
[INFO] [stdout]    --> src/markdown.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             level += 1;
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/sql1.rs:492:9
[INFO] [stdout]     |
[INFO] [stdout] 492 |     let mut column_define_builder =
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `typ_enum` is never read
[INFO] [stdout]    --> src/sql1.rs:574:32
[INFO] [stdout]     |
[INFO] [stdout] 574 |             let mut typ_enum = IndexIdxTyeEnum::None;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `typ_enum` is never read
[INFO] [stdout]    --> src/sql1.rs:626:32
[INFO] [stdout]     |
[INFO] [stdout] 626 |             let mut typ_enum = IndexIdxTyeEnum::None;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/sql1.rs:648:9
[INFO] [stdout]     |
[INFO] [stdout] 648 |     let mut parse_if_not_exist = tuple((
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u32`
[INFO] [stdout]    --> src/sql2_render.rs:101:32
[INFO] [stdout]     |
[INFO] [stdout] 101 |         DataTypeEnum::DateTime(u32) => "datetime".to_string(),
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/sql2_render.rs:163:13
[INFO] [stdout]     |
[INFO] [stdout] 163 |         let mut ctx = Context::new();
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Element` is never constructed
[INFO] [stdout]   --> src/lib.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | struct Element {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `the_letter_a` is never used
[INFO] [stdout]   --> src/lib.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn the_letter_a(input: &str) -> Result<(&str, ()), &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_literal` is never used
[INFO] [stdout]   --> src/lib.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn match_literal(expected: &'static str) -> impl Fn(&str) -> Result<(&str, ()), &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `identifier_v1` is never used
[INFO] [stdout]   --> src/lib.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn identifier_v1(input: &str) -> Result<(&str, String), &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pair_v1` is never used
[INFO] [stdout]   --> src/lib.rs:58:4
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn pair_v1<P1, P2, R1, R2>(
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_v1` is never used
[INFO] [stdout]   --> src/lib.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn map_v1<P, F, A, B>(parser: P, map_fn: F) -> impl Fn(&str) -> Result<(&str, B), &str>
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ParseResult` is never used
[INFO] [stdout]   --> src/lib.rs:85:6
[INFO] [stdout]    |
[INFO] [stdout] 85 | type ParseResult<'a, Output> = Result<(&'a str, Output), &'a str>;
[INFO] [stdout]    |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ParserV1` is never used
[INFO] [stdout]   --> src/lib.rs:87:7
[INFO] [stdout]    |
[INFO] [stdout] 87 | trait ParserV1<'a, Output> {
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Parser` is never used
[INFO] [stdout]   --> src/lib.rs:91:7
[INFO] [stdout]    |
[INFO] [stdout] 91 | trait Parser<'a, Output> {
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map` is never used
[INFO] [stdout]    --> src/lib.rs:135:4
[INFO] [stdout]     |
[INFO] [stdout] 135 | fn map<'a, P, F, A, B>(parser: P, map_fn: F) -> impl Parser<'a, B>
[INFO] [stdout]     |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pair_v2` is never used
[INFO] [stdout]    --> src/lib.rs:147:4
[INFO] [stdout]     |
[INFO] [stdout] 147 | fn pair_v2<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, (R1, R2)>
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pair_v3` is never used
[INFO] [stdout]    --> src/lib.rs:161:4
[INFO] [stdout]     |
[INFO] [stdout] 161 | fn pair_v3<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, (R1, R2)>
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pair` is never used
[INFO] [stdout]    --> src/lib.rs:185:4
[INFO] [stdout]     |
[INFO] [stdout] 185 | fn pair<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, (R1, R2)>
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `left` is never used
[INFO] [stdout]    --> src/lib.rs:199:4
[INFO] [stdout]     |
[INFO] [stdout] 199 | fn left<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, R1>
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `right` is never used
[INFO] [stdout]    --> src/lib.rs:208:4
[INFO] [stdout]     |
[INFO] [stdout] 208 | fn right<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, R2>
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `identifier` is never used
[INFO] [stdout]    --> src/lib.rs:218:4
[INFO] [stdout]     |
[INFO] [stdout] 218 | fn identifier(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `one_or_more` is never used
[INFO] [stdout]    --> src/lib.rs:236:4
[INFO] [stdout]     |
[INFO] [stdout] 236 | fn one_or_more<'a, P, A>(parser: P) -> impl Parser<'a, Vec<A>>
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `zero_or_more` is never used
[INFO] [stdout]    --> src/lib.rs:256:4
[INFO] [stdout]     |
[INFO] [stdout] 256 | fn zero_or_more<'a, P, A>(parser: P) -> impl Parser<'a, Vec<A>>
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `any_char` is never used
[INFO] [stdout]    --> src/lib.rs:281:4
[INFO] [stdout]     |
[INFO] [stdout] 281 | fn any_char(input: &str) -> ParseResult<char> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pred` is never used
[INFO] [stdout]    --> src/lib.rs:288:4
[INFO] [stdout]     |
[INFO] [stdout] 288 | fn pred<'a, P, A, F>(parser: P, predicate: F) -> impl Parser<'a, A>
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `whitespace_char` is never used
[INFO] [stdout]    --> src/lib.rs:303:4
[INFO] [stdout]     |
[INFO] [stdout] 303 | fn whitespace_char<'a>() -> impl Parser<'a, char> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `space1` is never used
[INFO] [stdout]    --> src/lib.rs:308:4
[INFO] [stdout]     |
[INFO] [stdout] 308 | fn space1<'a>() -> impl Parser<'a, Vec<char>> {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `space0` is never used
[INFO] [stdout]    --> src/lib.rs:313:4
[INFO] [stdout]     |
[INFO] [stdout] 313 | fn space0<'a>() -> impl Parser<'a, Vec<char>> {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `quoted_string_v1` is never used
[INFO] [stdout]    --> src/lib.rs:318:4
[INFO] [stdout]     |
[INFO] [stdout] 318 | fn quoted_string_v1<'a>() -> impl Parser<'a, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `attribute_pair` is never used
[INFO] [stdout]    --> src/lib.rs:331:4
[INFO] [stdout]     |
[INFO] [stdout] 331 | fn attribute_pair<'a>() -> impl Parser<'a, (String, String)> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `attributes` is never used
[INFO] [stdout]    --> src/lib.rs:336:4
[INFO] [stdout]     |
[INFO] [stdout] 336 | fn attributes<'a>() -> impl Parser<'a, Vec<(String, String)>> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `element_start` is never used
[INFO] [stdout]    --> src/lib.rs:340:4
[INFO] [stdout]     |
[INFO] [stdout] 340 | fn element_start<'a>() -> impl Parser<'a, (String, Vec<(String, String)>)> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BoxedParser` is never constructed
[INFO] [stdout]    --> src/lib.rs:355:8
[INFO] [stdout]     |
[INFO] [stdout] 355 | struct BoxedParser<'a, Output> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/lib.rs:360:8
[INFO] [stdout]     |
[INFO] [stdout] 359 | impl<'a, Output> BoxedParser<'a, Output> {
[INFO] [stdout]     | ---------------------------------------- associated function in this implementation
[INFO] [stdout] 360 |     fn new<P>(parser: P) -> Self
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `quoted_string` is never used
[INFO] [stdout]    --> src/lib.rs:376:4
[INFO] [stdout]     |
[INFO] [stdout] 376 | fn quoted_string<'a>() -> impl Parser<'a, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `single_element` is never used
[INFO] [stdout]    --> src/lib.rs:388:4
[INFO] [stdout]     |
[INFO] [stdout] 388 | fn single_element<'a>() -> impl Parser<'a, Element> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `open_element` is never used
[INFO] [stdout]    --> src/lib.rs:396:4
[INFO] [stdout]     |
[INFO] [stdout] 396 | fn open_element<'a>() -> impl Parser<'a, Element> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `either` is never used
[INFO] [stdout]    --> src/lib.rs:405:4
[INFO] [stdout]     |
[INFO] [stdout] 405 | fn either<'a, P1, P2, A>(parser1: P1, parser2: P2) -> impl Parser<'a, A>
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `element_v1` is never used
[INFO] [stdout]    --> src/lib.rs:416:4
[INFO] [stdout]     |
[INFO] [stdout] 416 | fn element_v1<'a>() -> impl Parser<'a, Element> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `close_element` is never used
[INFO] [stdout]    --> src/lib.rs:420:4
[INFO] [stdout]     |
[INFO] [stdout] 420 | fn close_element<'a>(expected_name: String) -> impl Parser<'a, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `and_then` is never used
[INFO] [stdout]    --> src/lib.rs:432:4
[INFO] [stdout]     |
[INFO] [stdout] 432 | fn and_then<'a, P, F, A, B, NextP>(parser: P, f: F) -> impl Parser<'a, B>
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parent_element` is never used
[INFO] [stdout]    --> src/lib.rs:444:4
[INFO] [stdout]     |
[INFO] [stdout] 444 | fn parent_element<'a>() -> impl Parser<'a, Element> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `whitespace_wrap` is never used
[INFO] [stdout]    --> src/lib.rs:454:4
[INFO] [stdout]     |
[INFO] [stdout] 454 | fn whitespace_wrap<'a, P, A>(parser: P) -> impl Parser<'a, A>
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `element` is never used
[INFO] [stdout]    --> src/lib.rs:461:4
[INFO] [stdout]     |
[INFO] [stdout] 461 | fn element<'a>() -> impl Parser<'a, Element> {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Method` is never used
[INFO] [stdout]  --> src/http.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub enum Method {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/http.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Method {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 20 |     pub fn new(s: &[u8]) -> Method {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_no_case` is never used
[INFO] [stdout]   --> src/http.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn compare_no_case(left: &[u8], right: &[u8]) ->bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `JsonValue` is never used
[INFO] [stdout]   --> src/json.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub enum JsonValue {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_str` is never used
[INFO] [stdout]   --> src/json.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn parse_str<'a, E: ParseError<&'a str>>(i: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `boolean` is never used
[INFO] [stdout]   --> src/json.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn boolean<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&'a str, bool, E> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `string` is never used
[INFO] [stdout]   --> src/json.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn string<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `array` is never used
[INFO] [stdout]   --> src/json.rs:48:4
[INFO] [stdout]    |
[INFO] [stdout] 48 | fn array<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `key_value` is never used
[INFO] [stdout]   --> src/json.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn key_value<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hash` is never used
[INFO] [stdout]   --> src/json.rs:73:4
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn hash<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `json_value` is never used
[INFO] [stdout]   --> src/json.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn json_value<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sp` is never used
[INFO] [stdout]    --> src/json.rs:114:4
[INFO] [stdout]     |
[INFO] [stdout] 114 | fn sp<'a, E: ParseError<&'a str>>(i: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stdout]     |    ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `root` is never used
[INFO] [stdout]    --> src/json.rs:122:4
[INFO] [stdout]     |
[INFO] [stdout] 122 | fn root<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Title` is never constructed
[INFO] [stdout]  --> src/markdown.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Title {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TitleItem` is never constructed
[INFO] [stdout]   --> src/markdown.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct TitleItem {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ElementList` is never used
[INFO] [stdout]   --> src/markdown.rs:15:6
[INFO] [stdout]    |
[INFO] [stdout] 15 | type ElementList = Vec<TitleItem>;
[INFO] [stdout]    |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MdBody` is never constructed
[INFO] [stdout]   --> src/markdown.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct MdBody {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `the_letter_a` is never used
[INFO] [stdout]   --> src/markdown.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn the_letter_a(input: &str) -> Result<(&str, ()), &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_literal` is never used
[INFO] [stdout]   --> src/markdown.rs:32:4
[INFO] [stdout]    |
[INFO] [stdout] 32 | fn match_literal(expected: &'static str) -> impl Fn(&str) -> Result<(&str, ()), &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ParseResult` is never used
[INFO] [stdout]   --> src/markdown.rs:40:6
[INFO] [stdout]    |
[INFO] [stdout] 40 | type ParseResult<'a, Output> = Result<(&'a str, Output), &'a str>;
[INFO] [stdout]    |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Parser` is never used
[INFO] [stdout]   --> src/markdown.rs:42:7
[INFO] [stdout]    |
[INFO] [stdout] 42 | trait Parser<'a, Output> {
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `and_then` is never used
[INFO] [stdout]   --> src/markdown.rs:85:4
[INFO] [stdout]    |
[INFO] [stdout] 85 | fn and_then<'a, P, F, A, B, NextP>(parser: P, f: F) -> impl Parser<'a, B>
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pair` is never used
[INFO] [stdout]   --> src/markdown.rs:98:4
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn pair<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, (R1, R2)>
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `left` is never used
[INFO] [stdout]    --> src/markdown.rs:112:4
[INFO] [stdout]     |
[INFO] [stdout] 112 | fn left<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, R1>
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `right` is never used
[INFO] [stdout]    --> src/markdown.rs:121:4
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn right<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, R2>
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pred` is never used
[INFO] [stdout]    --> src/markdown.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn pred<'a, P, A, F>(parser: P, predicate: F) -> impl Parser<'a, A>
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ExtMatch` is never used
[INFO] [stdout]    --> src/markdown.rs:145:7
[INFO] [stdout]     |
[INFO] [stdout] 145 | trait ExtMatch {
[INFO] [stdout]     |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recog_title` is never used
[INFO] [stdout]    --> src/markdown.rs:161:4
[INFO] [stdout]     |
[INFO] [stdout] 161 | fn recog_title(input: &str) -> Result<(&str, String), &str> {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map` is never used
[INFO] [stdout]    --> src/markdown.rs:180:4
[INFO] [stdout]     |
[INFO] [stdout] 180 | fn map<'a, P, F, A, B>(parser: P, map_fn: F) -> impl Parser<'a, B>
[INFO] [stdout]     |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BoxedParser` is never constructed
[INFO] [stdout]    --> src/markdown.rs:192:8
[INFO] [stdout]     |
[INFO] [stdout] 192 | struct BoxedParser<'a, Output> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/markdown.rs:197:8
[INFO] [stdout]     |
[INFO] [stdout] 196 | impl<'a, Output> BoxedParser<'a, Output> {
[INFO] [stdout]     | ---------------------------------------- associated function in this implementation
[INFO] [stdout] 197 |     fn new<P>(parser: P) -> Self
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recog_title_content` is never used
[INFO] [stdout]    --> src/markdown.rs:214:4
[INFO] [stdout]     |
[INFO] [stdout] 214 | fn recog_title_content(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `one_or_more` is never used
[INFO] [stdout]    --> src/markdown.rs:232:4
[INFO] [stdout]     |
[INFO] [stdout] 232 | fn one_or_more<'a, P, A>(parser: P) -> impl Parser<'a, Vec<A>>
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `zero_or_more` is never used
[INFO] [stdout]    --> src/markdown.rs:252:4
[INFO] [stdout]     |
[INFO] [stdout] 252 | fn zero_or_more<'a, P, A>(parser: P) -> impl Parser<'a, Vec<A>>
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `any_char` is never used
[INFO] [stdout]    --> src/markdown.rs:266:4
[INFO] [stdout]     |
[INFO] [stdout] 266 | fn any_char(input: &str) -> ParseResult<char> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `whitespace_str` is never used
[INFO] [stdout]    --> src/markdown.rs:273:4
[INFO] [stdout]     |
[INFO] [stdout] 273 | fn whitespace_str<'a>() -> impl Parser<'a, char> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `space0` is never used
[INFO] [stdout]    --> src/markdown.rs:277:4
[INFO] [stdout]     |
[INFO] [stdout] 277 | fn space0<'a>() -> impl Parser<'a, Vec<char>> {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `space1` is never used
[INFO] [stdout]    --> src/markdown.rs:281:4
[INFO] [stdout]     |
[INFO] [stdout] 281 | fn space1<'a>() -> impl Parser<'a, Vec<char>> {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `title_content` is never used
[INFO] [stdout]    --> src/markdown.rs:285:4
[INFO] [stdout]     |
[INFO] [stdout] 285 | fn title_content<'a>() -> impl Parser<'a, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `title_level` is never used
[INFO] [stdout]    --> src/markdown.rs:299:4
[INFO] [stdout]     |
[INFO] [stdout] 299 | fn title_level(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `title_level2` is never used
[INFO] [stdout]    --> src/markdown.rs:324:4
[INFO] [stdout]     |
[INFO] [stdout] 324 | fn title_level2(input: &str) -> ParseResult<u8> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `title_pair` is never used
[INFO] [stdout]    --> src/markdown.rs:352:4
[INFO] [stdout]     |
[INFO] [stdout] 352 | fn title_pair<'a>() -> impl Parser<'a, (u8, String)> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Title` is never constructed
[INFO] [stdout]   --> src/markdown_nom.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct Title {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MdValue` is never used
[INFO] [stdout]   --> src/markdown_nom.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub enum MdValue {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Color` is never constructed
[INFO] [stdout]   --> src/nom1.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Color {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `from_hex` is never used
[INFO] [stdout]   --> src/nom1.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn from_hex(input: &str) -> Result<u8, std::num::ParseIntError> {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_primary` is never used
[INFO] [stdout]   --> src/nom1.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn hex_primary(input: &str) -> IResult<&str, u8> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_hex_digit` is never used
[INFO] [stdout]   --> src/nom1.rs:32:4
[INFO] [stdout]    |
[INFO] [stdout] 32 | fn is_hex_digit(c: char) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_color` is never used
[INFO] [stdout]   --> src/nom1.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn hex_color(input: &str) -> IResult<&str, Color> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `md_title_level` is never used
[INFO] [stdout]   --> src/nom1.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn md_title_level(input: &str) -> IResult<&str, (&str, &str)> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `md_title_content_part` is never used
[INFO] [stdout]   --> src/nom1.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn md_title_content_part(input: &str) -> IResult<&str, &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `md_title_code_block` is never used
[INFO] [stdout]   --> src/nom1.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn md_title_code_block(input: &str) -> IResult<&str, &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `md_title_content` is never used
[INFO] [stdout]   --> src/nom1.rs:60:4
[INFO] [stdout]    |
[INFO] [stdout] 60 | fn md_title_content(input: &str) -> IResult<&str, Vec<&str>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `md_title_content_dealed` is never used
[INFO] [stdout]   --> src/nom1.rs:80:4
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn md_title_content_dealed(input: &str) -> IResult<&str, Vec<&str>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_u32` is never used
[INFO] [stdout]    --> src/parse_num1.rs:178:4
[INFO] [stdout]     |
[INFO] [stdout] 178 | fn parse_u32(input: &[u8]) -> IResult<&[u8], &[u8]> {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_u32_ver1` is never used
[INFO] [stdout]    --> src/parse_num1.rs:182:4
[INFO] [stdout]     |
[INFO] [stdout] 182 | fn parse_u32_ver1(input: &[u8]) -> nom::IResult<&[u8], u32> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_normal_str1` is never used
[INFO] [stdout]    --> src/parse_string.rs:298:4
[INFO] [stdout]     |
[INFO] [stdout] 298 | fn parse_normal_str1<'a>(input: &'a str) -> IResult<&'a str, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_normal_or_escaped_str` is never used
[INFO] [stdout]    --> src/parse_string.rs:355:4
[INFO] [stdout]     |
[INFO] [stdout] 355 | fn parse_normal_or_escaped_str(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_str_with_escaped_and_combine` is never used
[INFO] [stdout]    --> src/parse_string.rs:361:8
[INFO] [stdout]     |
[INFO] [stdout] 361 | pub fn parse_str_with_escaped_and_combine(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Fr` is never used
[INFO] [stdout]    --> src/parse_string.rs:391:6
[INFO] [stdout]     |
[INFO] [stdout] 391 | enum Fr<'a> {
[INFO] [stdout]     |      ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `demo1` is never used
[INFO] [stdout]    --> src/parse_string.rs:395:4
[INFO] [stdout]     |
[INFO] [stdout] 395 | fn demo1() {
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `connect` is never used
[INFO] [stdout]  --> src/redis.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | async fn connect() -> Result<(), Box<dyn Error>> {
[INFO] [stdout]   |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TableSchema` is never constructed
[INFO] [stdout]    --> src/sql1.rs:801:8
[INFO] [stdout]     |
[INFO] [stdout] 801 | struct TableSchema {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_create_sql` is never used
[INFO] [stdout]    --> src/sql1.rs:808:4
[INFO] [stdout]     |
[INFO] [stdout] 808 | fn parse_create_sql(input: &str) -> IResult<&str, TableSchema> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `setting` is never read
[INFO] [stdout]    --> src/sql2_render.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct TypeRender {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 140 |     setting: RenderSetting,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TypeRender` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub mod sql2_render;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout]  2 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:218:22
[INFO] [stdout]     |
[INFO] [stdout] 218 | fn identifier(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |                      ^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 218 | fn identifier(input: &str) -> ParseResult<'_, String> {
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:281:20
[INFO] [stdout]     |
[INFO] [stdout] 281 | fn any_char(input: &str) -> ParseResult<char> {
[INFO] [stdout]     |                    ^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 281 | fn any_char(input: &str) -> ParseResult<'_, char> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/markdown.rs:214:31
[INFO] [stdout]     |
[INFO] [stdout] 214 | fn recog_title_content(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |                               ^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 214 | fn recog_title_content(input: &str) -> ParseResult<'_, String> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/markdown.rs:266:20
[INFO] [stdout]     |
[INFO] [stdout] 266 | fn any_char(input: &str) -> ParseResult<char> {
[INFO] [stdout]     |                    ^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 266 | fn any_char(input: &str) -> ParseResult<'_, char> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/markdown.rs:299:23
[INFO] [stdout]     |
[INFO] [stdout] 299 | fn title_level(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |                       ^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 299 | fn title_level(input: &str) -> ParseResult<'_, String> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/markdown.rs:324:24
[INFO] [stdout]     |
[INFO] [stdout] 324 | fn title_level2(input: &str) -> ParseResult<u8> {
[INFO] [stdout]     |                        ^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 324 | fn title_level2(input: &str) -> ParseResult<'_, u8> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:131:1
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub fn parse_column_definition_of_null(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:139:1
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn parse_column_definition_of_not_null(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub fn identifier_char_parser(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/sql1.rs:172:1
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub enum DataTypeEnum {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:173:5
[INFO] [stdout]     |
[INFO] [stdout] 173 |     TinyInt,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |     SmallInt,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:175:5
[INFO] [stdout]     |
[INFO] [stdout] 175 |     Int,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     Bigint,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:177:5
[INFO] [stdout]     |
[INFO] [stdout] 177 |     VarChar(u32),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:178:5
[INFO] [stdout]     |
[INFO] [stdout] 178 |     DateTime(u32),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     Text,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 180 |     BigText,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:181:5
[INFO] [stdout]     |
[INFO] [stdout] 181 |     Decimal(u8),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     Unknown,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/sql1.rs:186:1
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub enum DefaultEnum {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:187:5
[INFO] [stdout]     |
[INFO] [stdout] 187 |     DefaultNone, // 没有 default 语句
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     DefaultNull,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:189:5
[INFO] [stdout]     |
[INFO] [stdout] 189 |     DefaultInt(u32),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 |     DefaultStr(String),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 |     DefaultCurStamp,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:192:5
[INFO] [stdout]     |
[INFO] [stdout] 192 |     DefaultAutoIncrement,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:193:5
[INFO] [stdout]     |
[INFO] [stdout] 193 |     DefaultCurStampOnUpdateCurStamp,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 |     DefaultOnUpdateCurStamp,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:195:5
[INFO] [stdout]     |
[INFO] [stdout] 195 |     Unknown,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:198:1
[INFO] [stdout]     |
[INFO] [stdout] 198 | pub fn type_int_size(input: &str) -> IResult<&str, u32> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:205:1
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn type_tiny_int(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:212:1
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub fn parse_int_auto_increment(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:219:1
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub fn parse_int_is_unsigned(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub fn type_some_int(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:252:1
[INFO] [stdout]     |
[INFO] [stdout] 252 | pub fn type_collate(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:260:1
[INFO] [stdout]     |
[INFO] [stdout] 260 | pub fn type_varchar(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:269:1
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub fn type_datetime(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:282:1
[INFO] [stdout]     |
[INFO] [stdout] 282 | pub fn type_text(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:289:1
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub fn type_bigtext(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:298:1
[INFO] [stdout]     |
[INFO] [stdout] 298 | pub fn type_decimal(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:305:1
[INFO] [stdout]     |
[INFO] [stdout] 305 | pub fn parse_data_type(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:312:1
[INFO] [stdout]     |
[INFO] [stdout] 312 | pub fn parse_default_int(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:319:1
[INFO] [stdout]     |
[INFO] [stdout] 319 | pub fn parse_default_str(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:331:1
[INFO] [stdout]     |
[INFO] [stdout] 331 | pub fn parse_comment(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | pub fn parse_default_null(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:351:1
[INFO] [stdout]     |
[INFO] [stdout] 351 | pub fn parse_default_on_current_timestamp(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:366:1
[INFO] [stdout]     |
[INFO] [stdout] 366 | pub fn parse_default_current_timestamp(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:390:1
[INFO] [stdout]     |
[INFO] [stdout] 390 | pub fn parse_default(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:410:5
[INFO] [stdout]     |
[INFO] [stdout] 410 |     pub name: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:411:5
[INFO] [stdout]     |
[INFO] [stdout] 411 |     pub typ: DataTypeEnum,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:412:5
[INFO] [stdout]     |
[INFO] [stdout] 412 |     pub comment: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:421:1
[INFO] [stdout]     |
[INFO] [stdout] 421 | pub fn parse_end_has_comma(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:428:1
[INFO] [stdout]     |
[INFO] [stdout] 428 | pub fn parse_end_no_comma(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:437:1
[INFO] [stdout]     |
[INFO] [stdout] 437 | pub fn parse_end_comma(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:467:1
[INFO] [stdout]     |
[INFO] [stdout] 467 | pub fn parse_column_definition2(input: &str) -> IResult<&str, OneLineEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:491:1
[INFO] [stdout]     |
[INFO] [stdout] 491 | pub fn parse_many_column_definition(input: &str) -> IResult<&str, Vec<OneColumn>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:516:5
[INFO] [stdout]     |
[INFO] [stdout] 516 |     Column(OneColumn),
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:517:5
[INFO] [stdout]     |
[INFO] [stdout] 517 |     Index(OneIndex),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:523:5
[INFO] [stdout]     |
[INFO] [stdout] 523 |     Primary,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:524:5
[INFO] [stdout]     |
[INFO] [stdout] 524 |     Unique,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:525:5
[INFO] [stdout]     |
[INFO] [stdout] 525 |     Normal,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:526:5
[INFO] [stdout]     |
[INFO] [stdout] 526 |     None,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:555:1
[INFO] [stdout]     |
[INFO] [stdout] 555 | pub fn parse_idx_line(input: &str) -> IResult<&str, OneIndex> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:709:5
[INFO] [stdout]     |
[INFO] [stdout] 709 |     pub engine: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:710:5
[INFO] [stdout]     |
[INFO] [stdout] 710 |     pub charset: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:711:5
[INFO] [stdout]     |
[INFO] [stdout] 711 |     pub collate: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:712:5
[INFO] [stdout]     |
[INFO] [stdout] 712 |     pub comment: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/sql2_render.rs:69:1
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub fn to_big_case_camel_helper(args: &HashMap<String, Value>) -> tera::Result<Value> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/sql2_render.rs:92:1
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub fn transfer_type(typ: DataTypeEnum) -> String {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql2_render.rs:112:1
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn transfer_type_helper(args: &HashMap<String, Value>) -> tera::Result<Value> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/sql2_render.rs:144:5
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub fn new() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/sql2_render.rs:216:1
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub enum FieldNameStyleEnum {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql2_render.rs:218:5
[INFO] [stdout]     |
[INFO] [stdout] 218 |     SmallCaseCamel,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql2_render.rs:220:5
[INFO] [stdout]     |
[INFO] [stdout] 220 |     BigCaseCamel,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql2_render.rs:222:5
[INFO] [stdout]     |
[INFO] [stdout] 222 |     Underline,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 37.07s
[INFO] running `Command { std: "docker" "inspect" "ffbf2f3ae0a7165f108af2ee5065fce9aa5e7bf04686f2d8171e0c7a6cc6ca78", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ffbf2f3ae0a7165f108af2ee5065fce9aa5e7bf04686f2d8171e0c7a6cc6ca78", kill_on_drop: false }`
[INFO] [stdout] ffbf2f3ae0a7165f108af2ee5065fce9aa5e7bf04686f2d8171e0c7a6cc6ca78
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e4c553f23dbd9ad8beb375884aed5a8ce2f97b9f79d5fcc2be5853eaf4cbaa2d
[INFO] running `Command { std: "docker" "start" "-a" "e4c553f23dbd9ad8beb375884aed5a8ce2f97b9f79d5fcc2be5853eaf4cbaa2d", kill_on_drop: false }`
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:11
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:19
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:31
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:40
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |                                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:53
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |                                                     ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:64
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |                                                                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:21
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:33
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:43
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                                         ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:56
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                                                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:65
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                                                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:78
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                                                                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:88
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                                                                                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/http.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Err`, `ErrorKind`, `VerboseError`, and `convert_error`
[INFO] [stdout]   --> src/json.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 |     error::{context, convert_error, ContextError, ErrorKind, ParseError, VerboseError},
[INFO] [stdout]    |                      ^^^^^^^^^^^^^                ^^^^^^^^^              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     Err, IResult,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/json.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 133 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/markdown.rs:357:9
[INFO] [stdout]     |
[INFO] [stdout] 357 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContextError`, `Err`, `ErrorKind`, `IResult`, `ParseError`, `VerboseError`, `alphanumeric1 as alphanumeric`, `branch::alt`, `char`, `context`, `convert_error`, `cut`, `delimited`, `escaped`, `line_ending`, `many1`, `many_m_n`, `map`, `multispace1`, `not_line_ending`, `number::complete::double`, `one_of`, `opt`, `pair`, `preceded`, `separated_list0`, `separated_pair`, `tag`, `take_while`, `terminated`, and `value`
[INFO] [stdout]   --> src/markdown_nom.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  6 |     branch::alt,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]  7 |     bytes::complete::{escaped, tag, take_while},
[INFO] [stdout]    |                       ^^^^^^^  ^^^  ^^^^^^^^^^
[INFO] [stdout]  8 |     character::complete::{
[INFO] [stdout]  9 |         alphanumeric1 as alphanumeric, char, line_ending, multispace1, not_line_ending, one_of,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 10 |     },
[INFO] [stdout] 11 |     combinator::{cut, map, opt, value},
[INFO] [stdout]    |                  ^^^  ^^^  ^^^  ^^^^^
[INFO] [stdout] 12 |     error::{context, convert_error, ContextError, ErrorKind, ParseError, VerboseError},
[INFO] [stdout]    |             ^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 13 |     multi::{many1, many_m_n, separated_list0},
[INFO] [stdout]    |             ^^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 14 |     number::complete::double,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     sequence::{delimited, pair, preceded, separated_pair, terminated},
[INFO] [stdout]    |                ^^^^^^^^^  ^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 16 |     Err, IResult,
[INFO] [stdout]    |     ^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/markdown_nom.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/markdown_nom.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `many0`, `map_parser`, `pair`, and `terminated`
[INFO] [stdout]  --> src/nom1.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 |     combinator::{map_parser, map_res},
[INFO] [stdout]   |                  ^^^^^^^^^^
[INFO] [stdout] 8 |     multi::{many0, many1},
[INFO] [stdout]   |             ^^^^^
[INFO] [stdout] 9 |     sequence::{delimited, pair, terminated, tuple},
[INFO] [stdout]   |                           ^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::whitespace_char`
[INFO] [stdout]   --> src/nom1.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::whitespace_char;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::combinator::map as nom_map`
[INFO] [stdout]    --> src/parse_string.rs:287:5
[INFO] [stdout]     |
[INFO] [stdout] 287 | use nom::combinator::map as nom_map;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Err`, `Parser`, and `error::ErrorKind`
[INFO] [stdout]    --> src/parse_string.rs:296:11
[INFO] [stdout]     |
[INFO] [stdout] 296 | use nom::{error::ErrorKind, Err, Parser};
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^  ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufMut` and `BytesMut`
[INFO] [stdout]  --> src/redis.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use bytes::{BufMut, BytesMut};
[INFO] [stdout]   |             ^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::prelude::*`
[INFO] [stdout]  --> src/redis.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/redis.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parse_str_with_escaped_and_combine`
[INFO] [stdout]   --> src/sql1.rs:97:5
[INFO] [stdout]    |
[INFO] [stdout] 97 |     parse_str_with_escaped_and_combine, parse_str_with_escaped_and_combine_in_single_quote,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `many0`, `preceded`, and `take_while1`
[INFO] [stdout]    --> src/sql1.rs:101:41
[INFO] [stdout]     |
[INFO] [stdout] 101 |     bytes::complete::{tag, tag_no_case, take_while1},
[INFO] [stdout]     |                                         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     multi::{fold_many1, many0, many1, many_m_n},
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 107 |     sequence::{preceded, tuple},
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OneColumn`
[INFO] [stdout]   --> src/sql2_render.rs:17:33
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::sql1::{DataTypeEnum, OneColumn};
[INFO] [stdout]    |                                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::to_string`
[INFO] [stdout]   --> src/sql2_render.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use serde_json::to_string;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::Error`
[INFO] [stdout]   --> src/sql2_render.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use serde_json::Error;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate-level attribute should be in the root module
[INFO] [stdout]  --> src/markdown.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(unicode_internals)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/redis.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let mut stream = TcpStream::connect("127.0.0.1:6379").await?;
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `level` is assigned to, but never used
[INFO] [stdout]    --> src/markdown.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 300 |     let mut level: u8 = 0;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_level` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `level` is never read
[INFO] [stdout]    --> src/markdown.rs:305:13
[INFO] [stdout]     |
[INFO] [stdout] 305 |             level += 1;
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `level` is never read
[INFO] [stdout]    --> src/markdown.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             level += 1;
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/sql1.rs:492:9
[INFO] [stdout]     |
[INFO] [stdout] 492 |     let mut column_define_builder =
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `typ_enum` is never read
[INFO] [stdout]    --> src/sql1.rs:574:32
[INFO] [stdout]     |
[INFO] [stdout] 574 |             let mut typ_enum = IndexIdxTyeEnum::None;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `typ_enum` is never read
[INFO] [stdout]    --> src/sql1.rs:626:32
[INFO] [stdout]     |
[INFO] [stdout] 626 |             let mut typ_enum = IndexIdxTyeEnum::None;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/sql1.rs:648:9
[INFO] [stdout]     |
[INFO] [stdout] 648 |     let mut parse_if_not_exist = tuple((
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u32`
[INFO] [stdout]    --> src/sql2_render.rs:101:32
[INFO] [stdout]     |
[INFO] [stdout] 101 |         DataTypeEnum::DateTime(u32) => "datetime".to_string(),
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/sql2_render.rs:163:13
[INFO] [stdout]     |
[INFO] [stdout] 163 |         let mut ctx = Context::new();
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Element` is never constructed
[INFO] [stdout]   --> src/lib.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | struct Element {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `the_letter_a` is never used
[INFO] [stdout]   --> src/lib.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn the_letter_a(input: &str) -> Result<(&str, ()), &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_literal` is never used
[INFO] [stdout]   --> src/lib.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn match_literal(expected: &'static str) -> impl Fn(&str) -> Result<(&str, ()), &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `identifier_v1` is never used
[INFO] [stdout]   --> src/lib.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn identifier_v1(input: &str) -> Result<(&str, String), &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pair_v1` is never used
[INFO] [stdout]   --> src/lib.rs:58:4
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn pair_v1<P1, P2, R1, R2>(
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_v1` is never used
[INFO] [stdout]   --> src/lib.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn map_v1<P, F, A, B>(parser: P, map_fn: F) -> impl Fn(&str) -> Result<(&str, B), &str>
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ParseResult` is never used
[INFO] [stdout]   --> src/lib.rs:85:6
[INFO] [stdout]    |
[INFO] [stdout] 85 | type ParseResult<'a, Output> = Result<(&'a str, Output), &'a str>;
[INFO] [stdout]    |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ParserV1` is never used
[INFO] [stdout]   --> src/lib.rs:87:7
[INFO] [stdout]    |
[INFO] [stdout] 87 | trait ParserV1<'a, Output> {
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Parser` is never used
[INFO] [stdout]   --> src/lib.rs:91:7
[INFO] [stdout]    |
[INFO] [stdout] 91 | trait Parser<'a, Output> {
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map` is never used
[INFO] [stdout]    --> src/lib.rs:135:4
[INFO] [stdout]     |
[INFO] [stdout] 135 | fn map<'a, P, F, A, B>(parser: P, map_fn: F) -> impl Parser<'a, B>
[INFO] [stdout]     |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pair_v2` is never used
[INFO] [stdout]    --> src/lib.rs:147:4
[INFO] [stdout]     |
[INFO] [stdout] 147 | fn pair_v2<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, (R1, R2)>
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pair_v3` is never used
[INFO] [stdout]    --> src/lib.rs:161:4
[INFO] [stdout]     |
[INFO] [stdout] 161 | fn pair_v3<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, (R1, R2)>
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pair` is never used
[INFO] [stdout]    --> src/lib.rs:185:4
[INFO] [stdout]     |
[INFO] [stdout] 185 | fn pair<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, (R1, R2)>
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `left` is never used
[INFO] [stdout]    --> src/lib.rs:199:4
[INFO] [stdout]     |
[INFO] [stdout] 199 | fn left<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, R1>
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `right` is never used
[INFO] [stdout]    --> src/lib.rs:208:4
[INFO] [stdout]     |
[INFO] [stdout] 208 | fn right<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, R2>
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `identifier` is never used
[INFO] [stdout]    --> src/lib.rs:218:4
[INFO] [stdout]     |
[INFO] [stdout] 218 | fn identifier(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `one_or_more` is never used
[INFO] [stdout]    --> src/lib.rs:236:4
[INFO] [stdout]     |
[INFO] [stdout] 236 | fn one_or_more<'a, P, A>(parser: P) -> impl Parser<'a, Vec<A>>
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `zero_or_more` is never used
[INFO] [stdout]    --> src/lib.rs:256:4
[INFO] [stdout]     |
[INFO] [stdout] 256 | fn zero_or_more<'a, P, A>(parser: P) -> impl Parser<'a, Vec<A>>
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `any_char` is never used
[INFO] [stdout]    --> src/lib.rs:281:4
[INFO] [stdout]     |
[INFO] [stdout] 281 | fn any_char(input: &str) -> ParseResult<char> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pred` is never used
[INFO] [stdout]    --> src/lib.rs:288:4
[INFO] [stdout]     |
[INFO] [stdout] 288 | fn pred<'a, P, A, F>(parser: P, predicate: F) -> impl Parser<'a, A>
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `whitespace_char` is never used
[INFO] [stdout]    --> src/lib.rs:303:4
[INFO] [stdout]     |
[INFO] [stdout] 303 | fn whitespace_char<'a>() -> impl Parser<'a, char> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `space1` is never used
[INFO] [stdout]    --> src/lib.rs:308:4
[INFO] [stdout]     |
[INFO] [stdout] 308 | fn space1<'a>() -> impl Parser<'a, Vec<char>> {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `space0` is never used
[INFO] [stdout]    --> src/lib.rs:313:4
[INFO] [stdout]     |
[INFO] [stdout] 313 | fn space0<'a>() -> impl Parser<'a, Vec<char>> {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `quoted_string_v1` is never used
[INFO] [stdout]    --> src/lib.rs:318:4
[INFO] [stdout]     |
[INFO] [stdout] 318 | fn quoted_string_v1<'a>() -> impl Parser<'a, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `attribute_pair` is never used
[INFO] [stdout]    --> src/lib.rs:331:4
[INFO] [stdout]     |
[INFO] [stdout] 331 | fn attribute_pair<'a>() -> impl Parser<'a, (String, String)> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `attributes` is never used
[INFO] [stdout]    --> src/lib.rs:336:4
[INFO] [stdout]     |
[INFO] [stdout] 336 | fn attributes<'a>() -> impl Parser<'a, Vec<(String, String)>> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `element_start` is never used
[INFO] [stdout]    --> src/lib.rs:340:4
[INFO] [stdout]     |
[INFO] [stdout] 340 | fn element_start<'a>() -> impl Parser<'a, (String, Vec<(String, String)>)> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BoxedParser` is never constructed
[INFO] [stdout]    --> src/lib.rs:355:8
[INFO] [stdout]     |
[INFO] [stdout] 355 | struct BoxedParser<'a, Output> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/lib.rs:360:8
[INFO] [stdout]     |
[INFO] [stdout] 359 | impl<'a, Output> BoxedParser<'a, Output> {
[INFO] [stdout]     | ---------------------------------------- associated function in this implementation
[INFO] [stdout] 360 |     fn new<P>(parser: P) -> Self
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `quoted_string` is never used
[INFO] [stdout]    --> src/lib.rs:376:4
[INFO] [stdout]     |
[INFO] [stdout] 376 | fn quoted_string<'a>() -> impl Parser<'a, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `single_element` is never used
[INFO] [stdout]    --> src/lib.rs:388:4
[INFO] [stdout]     |
[INFO] [stdout] 388 | fn single_element<'a>() -> impl Parser<'a, Element> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `open_element` is never used
[INFO] [stdout]    --> src/lib.rs:396:4
[INFO] [stdout]     |
[INFO] [stdout] 396 | fn open_element<'a>() -> impl Parser<'a, Element> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `either` is never used
[INFO] [stdout]    --> src/lib.rs:405:4
[INFO] [stdout]     |
[INFO] [stdout] 405 | fn either<'a, P1, P2, A>(parser1: P1, parser2: P2) -> impl Parser<'a, A>
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `element_v1` is never used
[INFO] [stdout]    --> src/lib.rs:416:4
[INFO] [stdout]     |
[INFO] [stdout] 416 | fn element_v1<'a>() -> impl Parser<'a, Element> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `close_element` is never used
[INFO] [stdout]    --> src/lib.rs:420:4
[INFO] [stdout]     |
[INFO] [stdout] 420 | fn close_element<'a>(expected_name: String) -> impl Parser<'a, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `and_then` is never used
[INFO] [stdout]    --> src/lib.rs:432:4
[INFO] [stdout]     |
[INFO] [stdout] 432 | fn and_then<'a, P, F, A, B, NextP>(parser: P, f: F) -> impl Parser<'a, B>
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parent_element` is never used
[INFO] [stdout]    --> src/lib.rs:444:4
[INFO] [stdout]     |
[INFO] [stdout] 444 | fn parent_element<'a>() -> impl Parser<'a, Element> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `whitespace_wrap` is never used
[INFO] [stdout]    --> src/lib.rs:454:4
[INFO] [stdout]     |
[INFO] [stdout] 454 | fn whitespace_wrap<'a, P, A>(parser: P) -> impl Parser<'a, A>
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `element` is never used
[INFO] [stdout]    --> src/lib.rs:461:4
[INFO] [stdout]     |
[INFO] [stdout] 461 | fn element<'a>() -> impl Parser<'a, Element> {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Method` is never used
[INFO] [stdout]  --> src/http.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub enum Method {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/http.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Method {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 20 |     pub fn new(s: &[u8]) -> Method {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_no_case` is never used
[INFO] [stdout]   --> src/http.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn compare_no_case(left: &[u8], right: &[u8]) ->bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `JsonValue` is never used
[INFO] [stdout]   --> src/json.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub enum JsonValue {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_str` is never used
[INFO] [stdout]   --> src/json.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn parse_str<'a, E: ParseError<&'a str>>(i: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `boolean` is never used
[INFO] [stdout]   --> src/json.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn boolean<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&'a str, bool, E> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `string` is never used
[INFO] [stdout]   --> src/json.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn string<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `array` is never used
[INFO] [stdout]   --> src/json.rs:48:4
[INFO] [stdout]    |
[INFO] [stdout] 48 | fn array<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `key_value` is never used
[INFO] [stdout]   --> src/json.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn key_value<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hash` is never used
[INFO] [stdout]   --> src/json.rs:73:4
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn hash<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `json_value` is never used
[INFO] [stdout]   --> src/json.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn json_value<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sp` is never used
[INFO] [stdout]    --> src/json.rs:114:4
[INFO] [stdout]     |
[INFO] [stdout] 114 | fn sp<'a, E: ParseError<&'a str>>(i: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stdout]     |    ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `root` is never used
[INFO] [stdout]    --> src/json.rs:122:4
[INFO] [stdout]     |
[INFO] [stdout] 122 | fn root<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Title` is never constructed
[INFO] [stdout]  --> src/markdown.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Title {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TitleItem` is never constructed
[INFO] [stdout]   --> src/markdown.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct TitleItem {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ElementList` is never used
[INFO] [stdout]   --> src/markdown.rs:15:6
[INFO] [stdout]    |
[INFO] [stdout] 15 | type ElementList = Vec<TitleItem>;
[INFO] [stdout]    |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MdBody` is never constructed
[INFO] [stdout]   --> src/markdown.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct MdBody {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `the_letter_a` is never used
[INFO] [stdout]   --> src/markdown.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn the_letter_a(input: &str) -> Result<(&str, ()), &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_literal` is never used
[INFO] [stdout]   --> src/markdown.rs:32:4
[INFO] [stdout]    |
[INFO] [stdout] 32 | fn match_literal(expected: &'static str) -> impl Fn(&str) -> Result<(&str, ()), &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ParseResult` is never used
[INFO] [stdout]   --> src/markdown.rs:40:6
[INFO] [stdout]    |
[INFO] [stdout] 40 | type ParseResult<'a, Output> = Result<(&'a str, Output), &'a str>;
[INFO] [stdout]    |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Parser` is never used
[INFO] [stdout]   --> src/markdown.rs:42:7
[INFO] [stdout]    |
[INFO] [stdout] 42 | trait Parser<'a, Output> {
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `and_then` is never used
[INFO] [stdout]   --> src/markdown.rs:85:4
[INFO] [stdout]    |
[INFO] [stdout] 85 | fn and_then<'a, P, F, A, B, NextP>(parser: P, f: F) -> impl Parser<'a, B>
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pair` is never used
[INFO] [stdout]   --> src/markdown.rs:98:4
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn pair<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, (R1, R2)>
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `left` is never used
[INFO] [stdout]    --> src/markdown.rs:112:4
[INFO] [stdout]     |
[INFO] [stdout] 112 | fn left<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, R1>
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `right` is never used
[INFO] [stdout]    --> src/markdown.rs:121:4
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn right<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, R2>
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pred` is never used
[INFO] [stdout]    --> src/markdown.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn pred<'a, P, A, F>(parser: P, predicate: F) -> impl Parser<'a, A>
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ExtMatch` is never used
[INFO] [stdout]    --> src/markdown.rs:145:7
[INFO] [stdout]     |
[INFO] [stdout] 145 | trait ExtMatch {
[INFO] [stdout]     |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recog_title` is never used
[INFO] [stdout]    --> src/markdown.rs:161:4
[INFO] [stdout]     |
[INFO] [stdout] 161 | fn recog_title(input: &str) -> Result<(&str, String), &str> {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map` is never used
[INFO] [stdout]    --> src/markdown.rs:180:4
[INFO] [stdout]     |
[INFO] [stdout] 180 | fn map<'a, P, F, A, B>(parser: P, map_fn: F) -> impl Parser<'a, B>
[INFO] [stdout]     |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BoxedParser` is never constructed
[INFO] [stdout]    --> src/markdown.rs:192:8
[INFO] [stdout]     |
[INFO] [stdout] 192 | struct BoxedParser<'a, Output> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/markdown.rs:197:8
[INFO] [stdout]     |
[INFO] [stdout] 196 | impl<'a, Output> BoxedParser<'a, Output> {
[INFO] [stdout]     | ---------------------------------------- associated function in this implementation
[INFO] [stdout] 197 |     fn new<P>(parser: P) -> Self
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recog_title_content` is never used
[INFO] [stdout]    --> src/markdown.rs:214:4
[INFO] [stdout]     |
[INFO] [stdout] 214 | fn recog_title_content(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `one_or_more` is never used
[INFO] [stdout]    --> src/markdown.rs:232:4
[INFO] [stdout]     |
[INFO] [stdout] 232 | fn one_or_more<'a, P, A>(parser: P) -> impl Parser<'a, Vec<A>>
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `zero_or_more` is never used
[INFO] [stdout]    --> src/markdown.rs:252:4
[INFO] [stdout]     |
[INFO] [stdout] 252 | fn zero_or_more<'a, P, A>(parser: P) -> impl Parser<'a, Vec<A>>
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `any_char` is never used
[INFO] [stdout]    --> src/markdown.rs:266:4
[INFO] [stdout]     |
[INFO] [stdout] 266 | fn any_char(input: &str) -> ParseResult<char> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `whitespace_str` is never used
[INFO] [stdout]    --> src/markdown.rs:273:4
[INFO] [stdout]     |
[INFO] [stdout] 273 | fn whitespace_str<'a>() -> impl Parser<'a, char> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `space0` is never used
[INFO] [stdout]    --> src/markdown.rs:277:4
[INFO] [stdout]     |
[INFO] [stdout] 277 | fn space0<'a>() -> impl Parser<'a, Vec<char>> {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `space1` is never used
[INFO] [stdout]    --> src/markdown.rs:281:4
[INFO] [stdout]     |
[INFO] [stdout] 281 | fn space1<'a>() -> impl Parser<'a, Vec<char>> {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `title_content` is never used
[INFO] [stdout]    --> src/markdown.rs:285:4
[INFO] [stdout]     |
[INFO] [stdout] 285 | fn title_content<'a>() -> impl Parser<'a, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `title_level` is never used
[INFO] [stdout]    --> src/markdown.rs:299:4
[INFO] [stdout]     |
[INFO] [stdout] 299 | fn title_level(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `title_level2` is never used
[INFO] [stdout]    --> src/markdown.rs:324:4
[INFO] [stdout]     |
[INFO] [stdout] 324 | fn title_level2(input: &str) -> ParseResult<u8> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `title_pair` is never used
[INFO] [stdout]    --> src/markdown.rs:352:4
[INFO] [stdout]     |
[INFO] [stdout] 352 | fn title_pair<'a>() -> impl Parser<'a, (u8, String)> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Title` is never constructed
[INFO] [stdout]   --> src/markdown_nom.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct Title {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MdValue` is never used
[INFO] [stdout]   --> src/markdown_nom.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub enum MdValue {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Color` is never constructed
[INFO] [stdout]   --> src/nom1.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Color {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `from_hex` is never used
[INFO] [stdout]   --> src/nom1.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn from_hex(input: &str) -> Result<u8, std::num::ParseIntError> {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_primary` is never used
[INFO] [stdout]   --> src/nom1.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn hex_primary(input: &str) -> IResult<&str, u8> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_hex_digit` is never used
[INFO] [stdout]   --> src/nom1.rs:32:4
[INFO] [stdout]    |
[INFO] [stdout] 32 | fn is_hex_digit(c: char) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_color` is never used
[INFO] [stdout]   --> src/nom1.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn hex_color(input: &str) -> IResult<&str, Color> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `md_title_level` is never used
[INFO] [stdout]   --> src/nom1.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn md_title_level(input: &str) -> IResult<&str, (&str, &str)> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `md_title_content_part` is never used
[INFO] [stdout]   --> src/nom1.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn md_title_content_part(input: &str) -> IResult<&str, &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `md_title_code_block` is never used
[INFO] [stdout]   --> src/nom1.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn md_title_code_block(input: &str) -> IResult<&str, &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `md_title_content` is never used
[INFO] [stdout]   --> src/nom1.rs:60:4
[INFO] [stdout]    |
[INFO] [stdout] 60 | fn md_title_content(input: &str) -> IResult<&str, Vec<&str>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `md_title_content_dealed` is never used
[INFO] [stdout]   --> src/nom1.rs:80:4
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn md_title_content_dealed(input: &str) -> IResult<&str, Vec<&str>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_u32` is never used
[INFO] [stdout]    --> src/parse_num1.rs:178:4
[INFO] [stdout]     |
[INFO] [stdout] 178 | fn parse_u32(input: &[u8]) -> IResult<&[u8], &[u8]> {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_u32_ver1` is never used
[INFO] [stdout]    --> src/parse_num1.rs:182:4
[INFO] [stdout]     |
[INFO] [stdout] 182 | fn parse_u32_ver1(input: &[u8]) -> nom::IResult<&[u8], u32> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_normal_str1` is never used
[INFO] [stdout]    --> src/parse_string.rs:298:4
[INFO] [stdout]     |
[INFO] [stdout] 298 | fn parse_normal_str1<'a>(input: &'a str) -> IResult<&'a str, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_normal_or_escaped_str` is never used
[INFO] [stdout]    --> src/parse_string.rs:355:4
[INFO] [stdout]     |
[INFO] [stdout] 355 | fn parse_normal_or_escaped_str(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_str_with_escaped_and_combine` is never used
[INFO] [stdout]    --> src/parse_string.rs:361:8
[INFO] [stdout]     |
[INFO] [stdout] 361 | pub fn parse_str_with_escaped_and_combine(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Fr` is never used
[INFO] [stdout]    --> src/parse_string.rs:391:6
[INFO] [stdout]     |
[INFO] [stdout] 391 | enum Fr<'a> {
[INFO] [stdout]     |      ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `demo1` is never used
[INFO] [stdout]    --> src/parse_string.rs:395:4
[INFO] [stdout]     |
[INFO] [stdout] 395 | fn demo1() {
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `connect` is never used
[INFO] [stdout]  --> src/redis.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | async fn connect() -> Result<(), Box<dyn Error>> {
[INFO] [stdout]   |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TableSchema` is never constructed
[INFO] [stdout]    --> src/sql1.rs:801:8
[INFO] [stdout]     |
[INFO] [stdout] 801 | struct TableSchema {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_create_sql` is never used
[INFO] [stdout]    --> src/sql1.rs:808:4
[INFO] [stdout]     |
[INFO] [stdout] 808 | fn parse_create_sql(input: &str) -> IResult<&str, TableSchema> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `setting` is never read
[INFO] [stdout]    --> src/sql2_render.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct TypeRender {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 140 |     setting: RenderSetting,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TypeRender` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub mod sql2_render;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout]  2 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:218:22
[INFO] [stdout]     |
[INFO] [stdout] 218 | fn identifier(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |                      ^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 218 | fn identifier(input: &str) -> ParseResult<'_, String> {
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:281:20
[INFO] [stdout]     |
[INFO] [stdout] 281 | fn any_char(input: &str) -> ParseResult<char> {
[INFO] [stdout]     |                    ^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 281 | fn any_char(input: &str) -> ParseResult<'_, char> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/markdown.rs:214:31
[INFO] [stdout]     |
[INFO] [stdout] 214 | fn recog_title_content(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |                               ^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 214 | fn recog_title_content(input: &str) -> ParseResult<'_, String> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/markdown.rs:266:20
[INFO] [stdout]     |
[INFO] [stdout] 266 | fn any_char(input: &str) -> ParseResult<char> {
[INFO] [stdout]     |                    ^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 266 | fn any_char(input: &str) -> ParseResult<'_, char> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/markdown.rs:299:23
[INFO] [stdout]     |
[INFO] [stdout] 299 | fn title_level(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |                       ^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 299 | fn title_level(input: &str) -> ParseResult<'_, String> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/markdown.rs:324:24
[INFO] [stdout]     |
[INFO] [stdout] 324 | fn title_level2(input: &str) -> ParseResult<u8> {
[INFO] [stdout]     |                        ^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 324 | fn title_level2(input: &str) -> ParseResult<'_, u8> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:131:1
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub fn parse_column_definition_of_null(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:139:1
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn parse_column_definition_of_not_null(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub fn identifier_char_parser(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/sql1.rs:172:1
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub enum DataTypeEnum {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:173:5
[INFO] [stdout]     |
[INFO] [stdout] 173 |     TinyInt,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |     SmallInt,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:175:5
[INFO] [stdout]     |
[INFO] [stdout] 175 |     Int,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     Bigint,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:177:5
[INFO] [stdout]     |
[INFO] [stdout] 177 |     VarChar(u32),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:178:5
[INFO] [stdout]     |
[INFO] [stdout] 178 |     DateTime(u32),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     Text,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 180 |     BigText,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:181:5
[INFO] [stdout]     |
[INFO] [stdout] 181 |     Decimal(u8),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     Unknown,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/sql1.rs:186:1
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub enum DefaultEnum {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:187:5
[INFO] [stdout]     |
[INFO] [stdout] 187 |     DefaultNone, // 没有 default 语句
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     DefaultNull,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:189:5
[INFO] [stdout]     |
[INFO] [stdout] 189 |     DefaultInt(u32),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 |     DefaultStr(String),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 |     DefaultCurStamp,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:192:5
[INFO] [stdout]     |
[INFO] [stdout] 192 |     DefaultAutoIncrement,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:193:5
[INFO] [stdout]     |
[INFO] [stdout] 193 |     DefaultCurStampOnUpdateCurStamp,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 |     DefaultOnUpdateCurStamp,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:195:5
[INFO] [stdout]     |
[INFO] [stdout] 195 |     Unknown,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:198:1
[INFO] [stdout]     |
[INFO] [stdout] 198 | pub fn type_int_size(input: &str) -> IResult<&str, u32> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:205:1
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn type_tiny_int(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:212:1
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub fn parse_int_auto_increment(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:219:1
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub fn parse_int_is_unsigned(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub fn type_some_int(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:252:1
[INFO] [stdout]     |
[INFO] [stdout] 252 | pub fn type_collate(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:260:1
[INFO] [stdout]     |
[INFO] [stdout] 260 | pub fn type_varchar(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:269:1
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub fn type_datetime(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:282:1
[INFO] [stdout]     |
[INFO] [stdout] 282 | pub fn type_text(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:289:1
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub fn type_bigtext(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:298:1
[INFO] [stdout]     |
[INFO] [stdout] 298 | pub fn type_decimal(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:305:1
[INFO] [stdout]     |
[INFO] [stdout] 305 | pub fn parse_data_type(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:312:1
[INFO] [stdout]     |
[INFO] [stdout] 312 | pub fn parse_default_int(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:319:1
[INFO] [stdout]     |
[INFO] [stdout] 319 | pub fn parse_default_str(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:331:1
[INFO] [stdout]     |
[INFO] [stdout] 331 | pub fn parse_comment(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling my-parser v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | pub fn parse_default_null(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:351:1
[INFO] [stdout]     |
[INFO] [stdout] 351 | pub fn parse_default_on_current_timestamp(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:366:1
[INFO] [stdout]     |
[INFO] [stdout] 366 | pub fn parse_default_current_timestamp(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:390:1
[INFO] [stdout]     |
[INFO] [stdout] 390 | pub fn parse_default(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:410:5
[INFO] [stdout]     |
[INFO] [stdout] 410 |     pub name: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:411:5
[INFO] [stdout]     |
[INFO] [stdout] 411 |     pub typ: DataTypeEnum,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:412:5
[INFO] [stdout]     |
[INFO] [stdout] 412 |     pub comment: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:421:1
[INFO] [stdout]     |
[INFO] [stdout] 421 | pub fn parse_end_has_comma(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:428:1
[INFO] [stdout]     |
[INFO] [stdout] 428 | pub fn parse_end_no_comma(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:437:1
[INFO] [stdout]     |
[INFO] [stdout] 437 | pub fn parse_end_comma(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:467:1
[INFO] [stdout]     |
[INFO] [stdout] 467 | pub fn parse_column_definition2(input: &str) -> IResult<&str, OneLineEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:491:1
[INFO] [stdout]     |
[INFO] [stdout] 491 | pub fn parse_many_column_definition(input: &str) -> IResult<&str, Vec<OneColumn>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:516:5
[INFO] [stdout]     |
[INFO] [stdout] 516 |     Column(OneColumn),
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:517:5
[INFO] [stdout]     |
[INFO] [stdout] 517 |     Index(OneIndex),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:523:5
[INFO] [stdout]     |
[INFO] [stdout] 523 |     Primary,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:524:5
[INFO] [stdout]     |
[INFO] [stdout] 524 |     Unique,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:525:5
[INFO] [stdout]     |
[INFO] [stdout] 525 |     Normal,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:526:5
[INFO] [stdout]     |
[INFO] [stdout] 526 |     None,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:555:1
[INFO] [stdout]     |
[INFO] [stdout] 555 | pub fn parse_idx_line(input: &str) -> IResult<&str, OneIndex> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:709:5
[INFO] [stdout]     |
[INFO] [stdout] 709 |     pub engine: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:710:5
[INFO] [stdout]     |
[INFO] [stdout] 710 |     pub charset: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:711:5
[INFO] [stdout]     |
[INFO] [stdout] 711 |     pub collate: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:712:5
[INFO] [stdout]     |
[INFO] [stdout] 712 |     pub comment: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/sql2_render.rs:69:1
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub fn to_big_case_camel_helper(args: &HashMap<String, Value>) -> tera::Result<Value> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/sql2_render.rs:92:1
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub fn transfer_type(typ: DataTypeEnum) -> String {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql2_render.rs:112:1
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn transfer_type_helper(args: &HashMap<String, Value>) -> tera::Result<Value> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/sql2_render.rs:144:5
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub fn new() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/sql2_render.rs:216:1
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub enum FieldNameStyleEnum {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql2_render.rs:218:5
[INFO] [stdout]     |
[INFO] [stdout] 218 |     SmallCaseCamel,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql2_render.rs:220:5
[INFO] [stdout]     |
[INFO] [stdout] 220 |     BigCaseCamel,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql2_render.rs:222:5
[INFO] [stdout]     |
[INFO] [stdout] 222 |     Underline,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:11
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:19
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:31
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:40
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |                                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:53
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |                                                     ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:35:64
[INFO] [stdout]    |
[INFO] [stdout] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stdout]    |                                                                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:21
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:33
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:43
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                                         ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:56
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                                                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:65
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                                                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:78
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                                                                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/http.rs:36:88
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stdout]    |                                                                                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Err`, `VerboseError`, and `convert_error`
[INFO] [stdout]   --> src/json.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 |     error::{context, convert_error, ContextError, ErrorKind, ParseError, VerboseError},
[INFO] [stdout]    |                      ^^^^^^^^^^^^^                                       ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     Err, IResult,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContextError`, `Err`, `ErrorKind`, `IResult`, `ParseError`, `VerboseError`, `alphanumeric1 as alphanumeric`, `branch::alt`, `char`, `context`, `convert_error`, `cut`, `delimited`, `escaped`, `line_ending`, `many1`, `many_m_n`, `map`, `multispace1`, `not_line_ending`, `number::complete::double`, `one_of`, `opt`, `pair`, `preceded`, `separated_list0`, `separated_pair`, `tag`, `take_while`, `terminated`, and `value`
[INFO] [stdout]   --> src/markdown_nom.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  6 |     branch::alt,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]  7 |     bytes::complete::{escaped, tag, take_while},
[INFO] [stdout]    |                       ^^^^^^^  ^^^  ^^^^^^^^^^
[INFO] [stdout]  8 |     character::complete::{
[INFO] [stdout]  9 |         alphanumeric1 as alphanumeric, char, line_ending, multispace1, not_line_ending, one_of,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 10 |     },
[INFO] [stdout] 11 |     combinator::{cut, map, opt, value},
[INFO] [stdout]    |                  ^^^  ^^^  ^^^  ^^^^^
[INFO] [stdout] 12 |     error::{context, convert_error, ContextError, ErrorKind, ParseError, VerboseError},
[INFO] [stdout]    |             ^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 13 |     multi::{many1, many_m_n, separated_list0},
[INFO] [stdout]    |             ^^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 14 |     number::complete::double,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     sequence::{delimited, pair, preceded, separated_pair, terminated},
[INFO] [stdout]    |                ^^^^^^^^^  ^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 16 |     Err, IResult,
[INFO] [stdout]    |     ^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/markdown_nom.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/markdown_nom.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `many0`, `map_parser`, `pair`, and `terminated`
[INFO] [stdout]  --> src/nom1.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 |     combinator::{map_parser, map_res},
[INFO] [stdout]   |                  ^^^^^^^^^^
[INFO] [stdout] 8 |     multi::{many0, many1},
[INFO] [stdout]   |             ^^^^^
[INFO] [stdout] 9 |     sequence::{delimited, pair, terminated, tuple},
[INFO] [stdout]   |                           ^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::whitespace_char`
[INFO] [stdout]   --> src/nom1.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::whitespace_char;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Err`, `Parser`, and `error::ErrorKind`
[INFO] [stdout]    --> src/parse_string.rs:296:11
[INFO] [stdout]     |
[INFO] [stdout] 296 | use nom::{error::ErrorKind, Err, Parser};
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^  ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `is_alphabetic` and `is_digit`
[INFO] [stdout]    --> src/parse_string.rs:402:26
[INFO] [stdout]     |
[INFO] [stdout] 402 |     use nom::character::{is_alphabetic, is_digit};
[INFO] [stdout]     |                          ^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::map`
[INFO] [stdout]    --> src/parse_string.rs:404:9
[INFO] [stdout]     |
[INFO] [stdout] 404 |     use crate::map;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufMut` and `BytesMut`
[INFO] [stdout]  --> src/redis.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use bytes::{BufMut, BytesMut};
[INFO] [stdout]   |             ^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::prelude::*`
[INFO] [stdout]  --> src/redis.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parse_str_with_escaped_and_combine`
[INFO] [stdout]   --> src/sql1.rs:97:5
[INFO] [stdout]    |
[INFO] [stdout] 97 |     parse_str_with_escaped_and_combine, parse_str_with_escaped_and_combine_in_single_quote,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `many0`, `preceded`, and `take_while1`
[INFO] [stdout]    --> src/sql1.rs:101:41
[INFO] [stdout]     |
[INFO] [stdout] 101 |     bytes::complete::{tag, tag_no_case, take_while1},
[INFO] [stdout]     |                                         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     multi::{fold_many1, many0, many1, many_m_n},
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 107 |     sequence::{preceded, tuple},
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::to_string`
[INFO] [stdout]   --> src/sql2_render.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use serde_json::to_string;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::Error`
[INFO] [stdout]   --> src/sql2_render.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use serde_json::Error;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate-level attribute should be in the root module
[INFO] [stdout]  --> src/markdown.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(unicode_internals)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/redis.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let mut stream = TcpStream::connect("127.0.0.1:6379").await?;
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `level` is assigned to, but never used
[INFO] [stdout]    --> src/markdown.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 300 |     let mut level: u8 = 0;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_level` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `level` is never read
[INFO] [stdout]    --> src/markdown.rs:305:13
[INFO] [stdout]     |
[INFO] [stdout] 305 |             level += 1;
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `level` is never read
[INFO] [stdout]    --> src/markdown.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             level += 1;
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p1`
[INFO] [stdout]    --> src/parse_num1.rs:228:20
[INFO] [stdout]     |
[INFO] [stdout] 228 |         if let Ok((p1, p2)) = parse_u32("(12345)".as_bytes()) {
[INFO] [stdout]     |                    ^^ help: if this is intentional, prefix it with an underscore: `_p1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]   --> src/redis.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |         let res = connect();
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/sql1.rs:492:9
[INFO] [stdout]     |
[INFO] [stdout] 492 |     let mut column_define_builder =
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `typ_enum` is never read
[INFO] [stdout]    --> src/sql1.rs:574:32
[INFO] [stdout]     |
[INFO] [stdout] 574 |             let mut typ_enum = IndexIdxTyeEnum::None;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `typ_enum` is never read
[INFO] [stdout]    --> src/sql1.rs:626:32
[INFO] [stdout]     |
[INFO] [stdout] 626 |             let mut typ_enum = IndexIdxTyeEnum::None;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/sql1.rs:648:9
[INFO] [stdout]     |
[INFO] [stdout] 648 |     let mut parse_if_not_exist = tuple((
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u32`
[INFO] [stdout]    --> src/sql2_render.rs:101:32
[INFO] [stdout]     |
[INFO] [stdout] 101 |         DataTypeEnum::DateTime(u32) => "datetime".to_string(),
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/sql2_render.rs:163:13
[INFO] [stdout]     |
[INFO] [stdout] 163 |         let mut ctx = Context::new();
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `identifier_v1` is never used
[INFO] [stdout]   --> src/lib.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn identifier_v1(input: &str) -> Result<(&str, String), &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pair_v1` is never used
[INFO] [stdout]   --> src/lib.rs:58:4
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn pair_v1<P1, P2, R1, R2>(
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_v1` is never used
[INFO] [stdout]   --> src/lib.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn map_v1<P, F, A, B>(parser: P, map_fn: F) -> impl Fn(&str) -> Result<(&str, B), &str>
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ParserV1` is never used
[INFO] [stdout]   --> src/lib.rs:87:7
[INFO] [stdout]    |
[INFO] [stdout] 87 | trait ParserV1<'a, Output> {
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pair_v2` is never used
[INFO] [stdout]    --> src/lib.rs:147:4
[INFO] [stdout]     |
[INFO] [stdout] 147 | fn pair_v2<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, (R1, R2)>
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pair_v3` is never used
[INFO] [stdout]    --> src/lib.rs:161:4
[INFO] [stdout]     |
[INFO] [stdout] 161 | fn pair_v3<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, (R1, R2)>
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `quoted_string_v1` is never used
[INFO] [stdout]    --> src/lib.rs:318:4
[INFO] [stdout]     |
[INFO] [stdout] 318 | fn quoted_string_v1<'a>() -> impl Parser<'a, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `element_v1` is never used
[INFO] [stdout]    --> src/lib.rs:416:4
[INFO] [stdout]     |
[INFO] [stdout] 416 | fn element_v1<'a>() -> impl Parser<'a, Element> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Head`, `Options`, `Put`, `Delete`, `Trace`, and `Connect` are never constructed
[INFO] [stdout]   --> src/http.rs:10:3
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub enum Method {
[INFO] [stdout]    |          ------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 10 |   Head,
[INFO] [stdout]    |   ^^^^
[INFO] [stdout] 11 |   Options,
[INFO] [stdout]    |   ^^^^^^^
[INFO] [stdout] 12 |   Put,
[INFO] [stdout]    |   ^^^
[INFO] [stdout] 13 |   Delete,
[INFO] [stdout]    |   ^^^^^^
[INFO] [stdout] 14 |   Trace,
[INFO] [stdout]    |   ^^^^^
[INFO] [stdout] 15 |   Connect,
[INFO] [stdout]    |   ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Method` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `level` is never read
[INFO] [stdout]  --> src/markdown.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Title {
[INFO] [stdout]   |        ----- field in this struct
[INFO] [stdout] 5 |     level: u8,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Title` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TitleItem` is never constructed
[INFO] [stdout]   --> src/markdown.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct TitleItem {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ElementList` is never used
[INFO] [stdout]   --> src/markdown.rs:15:6
[INFO] [stdout]    |
[INFO] [stdout] 15 | type ElementList = Vec<TitleItem>;
[INFO] [stdout]    |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MdBody` is never constructed
[INFO] [stdout]   --> src/markdown.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct MdBody {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `the_letter_a` is never used
[INFO] [stdout]   --> src/markdown.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn the_letter_a(input: &str) -> Result<(&str, ()), &str> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `map`, `pred`, and `and_then` are never used
[INFO] [stdout]   --> src/markdown.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | trait Parser<'a, Output> {
[INFO] [stdout]    |       ------ methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn map<F, NewOutput>(self, map_fn: F) -> BoxedParser<'a, NewOutput>
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn pred<F>(self, pred_fn: F) -> BoxedParser<'a, Output>
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     fn and_then<F, NextParser, NewOutput>(self, f: F) -> BoxedParser<'a, NewOutput>
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `and_then` is never used
[INFO] [stdout]   --> src/markdown.rs:85:4
[INFO] [stdout]    |
[INFO] [stdout] 85 | fn and_then<'a, P, F, A, B, NextP>(parser: P, f: F) -> impl Parser<'a, B>
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recog_title` is never used
[INFO] [stdout]    --> src/markdown.rs:161:4
[INFO] [stdout]     |
[INFO] [stdout] 161 | fn recog_title(input: &str) -> Result<(&str, String), &str> {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BoxedParser` is never constructed
[INFO] [stdout]    --> src/markdown.rs:192:8
[INFO] [stdout]     |
[INFO] [stdout] 192 | struct BoxedParser<'a, Output> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/markdown.rs:197:8
[INFO] [stdout]     |
[INFO] [stdout] 196 | impl<'a, Output> BoxedParser<'a, Output> {
[INFO] [stdout]     | ---------------------------------------- associated function in this implementation
[INFO] [stdout] 197 |     fn new<P>(parser: P) -> Self
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `whitespace_str` is never used
[INFO] [stdout]    --> src/markdown.rs:273:4
[INFO] [stdout]     |
[INFO] [stdout] 273 | fn whitespace_str<'a>() -> impl Parser<'a, char> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `space0` is never used
[INFO] [stdout]    --> src/markdown.rs:277:4
[INFO] [stdout]     |
[INFO] [stdout] 277 | fn space0<'a>() -> impl Parser<'a, Vec<char>> {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `space1` is never used
[INFO] [stdout]    --> src/markdown.rs:281:4
[INFO] [stdout]     |
[INFO] [stdout] 281 | fn space1<'a>() -> impl Parser<'a, Vec<char>> {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `title_level` is never used
[INFO] [stdout]    --> src/markdown.rs:299:4
[INFO] [stdout]     |
[INFO] [stdout] 299 | fn title_level(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Title` is never constructed
[INFO] [stdout]   --> src/markdown_nom.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct Title {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MdValue` is never used
[INFO] [stdout]   --> src/markdown_nom.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub enum MdValue {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `md_title_content_dealed` is never used
[INFO] [stdout]   --> src/nom1.rs:80:4
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn md_title_content_dealed(input: &str) -> IResult<&str, Vec<&str>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `demo1` is never used
[INFO] [stdout]    --> src/parse_string.rs:395:4
[INFO] [stdout]     |
[INFO] [stdout] 395 | fn demo1() {
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `setting` is never read
[INFO] [stdout]    --> src/sql2_render.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct TypeRender {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 140 |     setting: RenderSetting,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TypeRender` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub mod sql2_render;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout]  2 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:218:22
[INFO] [stdout]     |
[INFO] [stdout] 218 | fn identifier(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |                      ^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 218 | fn identifier(input: &str) -> ParseResult<'_, String> {
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:281:20
[INFO] [stdout]     |
[INFO] [stdout] 281 | fn any_char(input: &str) -> ParseResult<char> {
[INFO] [stdout]     |                    ^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 281 | fn any_char(input: &str) -> ParseResult<'_, char> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/markdown.rs:214:31
[INFO] [stdout]     |
[INFO] [stdout] 214 | fn recog_title_content(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |                               ^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 214 | fn recog_title_content(input: &str) -> ParseResult<'_, String> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/markdown.rs:266:20
[INFO] [stdout]     |
[INFO] [stdout] 266 | fn any_char(input: &str) -> ParseResult<char> {
[INFO] [stdout]     |                    ^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 266 | fn any_char(input: &str) -> ParseResult<'_, char> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/markdown.rs:299:23
[INFO] [stdout]     |
[INFO] [stdout] 299 | fn title_level(input: &str) -> ParseResult<String> {
[INFO] [stdout]     |                       ^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 299 | fn title_level(input: &str) -> ParseResult<'_, String> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/markdown.rs:324:24
[INFO] [stdout]     |
[INFO] [stdout] 324 | fn title_level2(input: &str) -> ParseResult<u8> {
[INFO] [stdout]     |                        ^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 324 | fn title_level2(input: &str) -> ParseResult<'_, u8> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:131:1
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub fn parse_column_definition_of_null(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:139:1
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn parse_column_definition_of_not_null(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:146:1
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub fn identifier_char_parser(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/sql1.rs:172:1
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub enum DataTypeEnum {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:173:5
[INFO] [stdout]     |
[INFO] [stdout] 173 |     TinyInt,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |     SmallInt,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:175:5
[INFO] [stdout]     |
[INFO] [stdout] 175 |     Int,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     Bigint,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:177:5
[INFO] [stdout]     |
[INFO] [stdout] 177 |     VarChar(u32),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:178:5
[INFO] [stdout]     |
[INFO] [stdout] 178 |     DateTime(u32),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     Text,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 180 |     BigText,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:181:5
[INFO] [stdout]     |
[INFO] [stdout] 181 |     Decimal(u8),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     Unknown,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/sql1.rs:186:1
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub enum DefaultEnum {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:187:5
[INFO] [stdout]     |
[INFO] [stdout] 187 |     DefaultNone, // 没有 default 语句
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     DefaultNull,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:189:5
[INFO] [stdout]     |
[INFO] [stdout] 189 |     DefaultInt(u32),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 |     DefaultStr(String),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 |     DefaultCurStamp,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:192:5
[INFO] [stdout]     |
[INFO] [stdout] 192 |     DefaultAutoIncrement,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:193:5
[INFO] [stdout]     |
[INFO] [stdout] 193 |     DefaultCurStampOnUpdateCurStamp,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 |     DefaultOnUpdateCurStamp,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:195:5
[INFO] [stdout]     |
[INFO] [stdout] 195 |     Unknown,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:198:1
[INFO] [stdout]     |
[INFO] [stdout] 198 | pub fn type_int_size(input: &str) -> IResult<&str, u32> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:205:1
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn type_tiny_int(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:212:1
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub fn parse_int_auto_increment(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:219:1
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub fn parse_int_is_unsigned(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub fn type_some_int(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:252:1
[INFO] [stdout]     |
[INFO] [stdout] 252 | pub fn type_collate(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:260:1
[INFO] [stdout]     |
[INFO] [stdout] 260 | pub fn type_varchar(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:269:1
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub fn type_datetime(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:282:1
[INFO] [stdout]     |
[INFO] [stdout] 282 | pub fn type_text(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:289:1
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub fn type_bigtext(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:298:1
[INFO] [stdout]     |
[INFO] [stdout] 298 | pub fn type_decimal(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:305:1
[INFO] [stdout]     |
[INFO] [stdout] 305 | pub fn parse_data_type(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:312:1
[INFO] [stdout]     |
[INFO] [stdout] 312 | pub fn parse_default_int(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:319:1
[INFO] [stdout]     |
[INFO] [stdout] 319 | pub fn parse_default_str(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:331:1
[INFO] [stdout]     |
[INFO] [stdout] 331 | pub fn parse_comment(input: &str) -> IResult<&str, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | pub fn parse_default_null(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:351:1
[INFO] [stdout]     |
[INFO] [stdout] 351 | pub fn parse_default_on_current_timestamp(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:366:1
[INFO] [stdout]     |
[INFO] [stdout] 366 | pub fn parse_default_current_timestamp(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:390:1
[INFO] [stdout]     |
[INFO] [stdout] 390 | pub fn parse_default(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:410:5
[INFO] [stdout]     |
[INFO] [stdout] 410 |     pub name: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:411:5
[INFO] [stdout]     |
[INFO] [stdout] 411 |     pub typ: DataTypeEnum,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:412:5
[INFO] [stdout]     |
[INFO] [stdout] 412 |     pub comment: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:421:1
[INFO] [stdout]     |
[INFO] [stdout] 421 | pub fn parse_end_has_comma(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:428:1
[INFO] [stdout]     |
[INFO] [stdout] 428 | pub fn parse_end_no_comma(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:437:1
[INFO] [stdout]     |
[INFO] [stdout] 437 | pub fn parse_end_comma(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:467:1
[INFO] [stdout]     |
[INFO] [stdout] 467 | pub fn parse_column_definition2(input: &str) -> IResult<&str, OneLineEnum> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:491:1
[INFO] [stdout]     |
[INFO] [stdout] 491 | pub fn parse_many_column_definition(input: &str) -> IResult<&str, Vec<OneColumn>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:516:5
[INFO] [stdout]     |
[INFO] [stdout] 516 |     Column(OneColumn),
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:517:5
[INFO] [stdout]     |
[INFO] [stdout] 517 |     Index(OneIndex),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:523:5
[INFO] [stdout]     |
[INFO] [stdout] 523 |     Primary,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:524:5
[INFO] [stdout]     |
[INFO] [stdout] 524 |     Unique,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:525:5
[INFO] [stdout]     |
[INFO] [stdout] 525 |     Normal,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql1.rs:526:5
[INFO] [stdout]     |
[INFO] [stdout] 526 |     None,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql1.rs:555:1
[INFO] [stdout]     |
[INFO] [stdout] 555 | pub fn parse_idx_line(input: &str) -> IResult<&str, OneIndex> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:709:5
[INFO] [stdout]     |
[INFO] [stdout] 709 |     pub engine: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:710:5
[INFO] [stdout]     |
[INFO] [stdout] 710 |     pub charset: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:711:5
[INFO] [stdout]     |
[INFO] [stdout] 711 |     pub collate: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/sql1.rs:712:5
[INFO] [stdout]     |
[INFO] [stdout] 712 |     pub comment: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/sql2_render.rs:69:1
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub fn to_big_case_camel_helper(args: &HashMap<String, Value>) -> tera::Result<Value> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/sql2_render.rs:92:1
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub fn transfer_type(typ: DataTypeEnum) -> String {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/sql2_render.rs:112:1
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn transfer_type_helper(args: &HashMap<String, Value>) -> tera::Result<Value> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/sql2_render.rs:144:5
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub fn new() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/sql2_render.rs:216:1
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub enum FieldNameStyleEnum {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql2_render.rs:218:5
[INFO] [stdout]     |
[INFO] [stdout] 218 |     SmallCaseCamel,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql2_render.rs:220:5
[INFO] [stdout]     |
[INFO] [stdout] 220 |     BigCaseCamel,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/sql2_render.rs:222:5
[INFO] [stdout]     |
[INFO] [stdout] 222 |     Underline,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.77s
[INFO] running `Command { std: "docker" "inspect" "e4c553f23dbd9ad8beb375884aed5a8ce2f97b9f79d5fcc2be5853eaf4cbaa2d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e4c553f23dbd9ad8beb375884aed5a8ce2f97b9f79d5fcc2be5853eaf4cbaa2d", kill_on_drop: false }`
[INFO] [stdout] e4c553f23dbd9ad8beb375884aed5a8ce2f97b9f79d5fcc2be5853eaf4cbaa2d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 60da047c3c76028ec25b49810edf32c710fac770efbdfd96387b3b0bab353f13
[INFO] running `Command { std: "docker" "start" "-a" "60da047c3c76028ec25b49810edf32c710fac770efbdfd96387b3b0bab353f13", kill_on_drop: false }`
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/http.rs:35:11
[INFO] [stderr]    |
[INFO] [stderr] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stderr]    |           ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/http.rs:35:19
[INFO] [stderr]    |
[INFO] [stderr] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stderr]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/http.rs:35:31
[INFO] [stderr]    |
[INFO] [stderr] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stderr]    |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/http.rs:35:40
[INFO] [stderr]    |
[INFO] [stderr] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stderr]    |                                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/http.rs:35:53
[INFO] [stderr]    |
[INFO] [stderr] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stderr]    |                                                     ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/http.rs:35:64
[INFO] [stderr]    |
[INFO] [stderr] 35 |         (0...64, 0...64) | (91...96, 91...96) | (123...255, 123...255) => a == b,
[INFO] [stderr]    |                                                                ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/http.rs:36:12
[INFO] [stderr]    |
[INFO] [stderr] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stderr]    |          ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/http.rs:36:21
[INFO] [stderr]    |
[INFO] [stderr] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stderr]    |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/http.rs:36:33
[INFO] [stderr]    |
[INFO] [stderr] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stderr]    |                               ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/http.rs:36:43
[INFO] [stderr]    |
[INFO] [stderr] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stderr]    |                                         ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/http.rs:36:56
[INFO] [stderr]    |
[INFO] [stderr] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stderr]    |                                                      ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/http.rs:36:65
[INFO] [stderr]    |
[INFO] [stderr] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stderr]    |                                                               ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/http.rs:36:78
[INFO] [stderr]    |
[INFO] [stderr] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stderr]    |                                                                            ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/http.rs:36:88
[INFO] [stderr]    |
[INFO] [stderr] 36 | ...   (65...90, 65...90) | (97...122, 97...122) | (65...90, 97...122) | (97...122, 65...90) => *a | 0b00_10_00_00 == *b | 0b00_10_00...
[INFO] [stderr]    |                                                                                      ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]   --> src/http.rs:42:9
[INFO] [stderr]    |
[INFO] [stderr] 42 |     use super::*;
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Err`, `ErrorKind`, `VerboseError`, and `convert_error`
[INFO] [stderr]   --> src/json.rs:12:22
[INFO] [stderr]    |
[INFO] [stderr] 12 |     error::{context, convert_error, ContextError, ErrorKind, ParseError, VerboseError},
[INFO] [stderr]    |                      ^^^^^^^^^^^^^                ^^^^^^^^^              ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 16 |     Err, IResult,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]    --> src/json.rs:133:9
[INFO] [stderr]     |
[INFO] [stderr] 133 |     use super::*;
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]    --> src/markdown.rs:357:9
[INFO] [stderr]     |
[INFO] [stderr] 357 |     use super::*;
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ContextError`, `Err`, `ErrorKind`, `IResult`, `ParseError`, `VerboseError`, `alphanumeric1 as alphanumeric`, `branch::alt`, `char`, `context`, `convert_error`, `cut`, `delimited`, `escaped`, `line_ending`, `many1`, `many_m_n`, `map`, `multispace1`, `not_line_ending`, `number::complete::double`, `one_of`, `opt`, `pair`, `preceded`, `separated_list0`, `separated_pair`, `tag`, `take_while`, `terminated`, and `value`
[INFO] [stderr]   --> src/markdown_nom.rs:6:5
[INFO] [stderr]    |
[INFO] [stderr]  6 |     branch::alt,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]  7 |     bytes::complete::{escaped, tag, take_while},
[INFO] [stderr]    |                       ^^^^^^^  ^^^  ^^^^^^^^^^
[INFO] [stderr]  8 |     character::complete::{
[INFO] [stderr]  9 |         alphanumeric1 as alphanumeric, char, line_ending, multispace1, not_line_ending, one_of,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stderr] 10 |     },
[INFO] [stderr] 11 |     combinator::{cut, map, opt, value},
[INFO] [stderr]    |                  ^^^  ^^^  ^^^  ^^^^^
[INFO] [stderr] 12 |     error::{context, convert_error, ContextError, ErrorKind, ParseError, VerboseError},
[INFO] [stderr]    |             ^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 13 |     multi::{many1, many_m_n, separated_list0},
[INFO] [stderr]    |             ^^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stderr] 14 |     number::complete::double,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 15 |     sequence::{delimited, pair, preceded, separated_pair, terminated},
[INFO] [stderr]    |                ^^^^^^^^^  ^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 16 |     Err, IResult,
[INFO] [stderr]    |     ^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]   --> src/markdown_nom.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | use std::collections::HashMap;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]   --> src/markdown_nom.rs:47:9
[INFO] [stderr]    |
[INFO] [stderr] 47 |     use super::*;
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `many0`, `map_parser`, `pair`, and `terminated`
[INFO] [stderr]  --> src/nom1.rs:7:18
[INFO] [stderr]   |
[INFO] [stderr] 7 |     combinator::{map_parser, map_res},
[INFO] [stderr]   |                  ^^^^^^^^^^
[INFO] [stderr] 8 |     multi::{many0, many1},
[INFO] [stderr]   |             ^^^^^
[INFO] [stderr] 9 |     sequence::{delimited, pair, terminated, tuple},
[INFO] [stderr]   |                           ^^^^  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::whitespace_char`
[INFO] [stderr]   --> src/nom1.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use crate::whitespace_char;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `nom::combinator::map as nom_map`
[INFO] [stderr]    --> src/parse_string.rs:287:5
[INFO] [stderr]     |
[INFO] [stderr] 287 | use nom::combinator::map as nom_map;
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Err`, `Parser`, and `error::ErrorKind`
[INFO] [stderr]    --> src/parse_string.rs:296:11
[INFO] [stderr]     |
[INFO] [stderr] 296 | use nom::{error::ErrorKind, Err, Parser};
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^  ^^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BufMut` and `BytesMut`
[INFO] [stderr]  --> src/redis.rs:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 | use bytes::{BufMut, BytesMut};
[INFO] [stderr]   |             ^^^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::prelude::*`
[INFO] [stderr]  --> src/redis.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use tokio::prelude::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]   --> src/redis.rs:16:9
[INFO] [stderr]    |
[INFO] [stderr] 16 |     use super::*;
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `parse_str_with_escaped_and_combine`
[INFO] [stderr]   --> src/sql1.rs:97:5
[INFO] [stderr]    |
[INFO] [stderr] 97 |     parse_str_with_escaped_and_combine, parse_str_with_escaped_and_combine_in_single_quote,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `many0`, `preceded`, and `take_while1`
[INFO] [stderr]    --> src/sql1.rs:101:41
[INFO] [stderr]     |
[INFO] [stderr] 101 |     bytes::complete::{tag, tag_no_case, take_while1},
[INFO] [stderr]     |                                         ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 106 |     multi::{fold_many1, many0, many1, many_m_n},
[INFO] [stderr]     |                         ^^^^^
[INFO] [stderr] 107 |     sequence::{preceded, tuple},
[INFO] [stderr]     |                ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `OneColumn`
[INFO] [stderr]   --> src/sql2_render.rs:17:33
[INFO] [stderr]    |
[INFO] [stderr] 17 | use crate::sql1::{DataTypeEnum, OneColumn};
[INFO] [stderr]    |                                 ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `serde_json::to_string`
[INFO] [stderr]   --> src/sql2_render.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 | use serde_json::to_string;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `serde_json::Error`
[INFO] [stderr]   --> src/sql2_render.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 | use serde_json::Error;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: crate-level attribute should be in the root module
[INFO] [stderr]  --> src/markdown.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #![feature(unicode_internals)]
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/redis.rs:10:9
[INFO] [stderr]    |
[INFO] [stderr] 10 |     let mut stream = TcpStream::connect("127.0.0.1:6379").await?;
[INFO] [stderr]    |         ----^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `level` is assigned to, but never used
[INFO] [stderr]    --> src/markdown.rs:300:9
[INFO] [stderr]     |
[INFO] [stderr] 300 |     let mut level: u8 = 0;
[INFO] [stderr]     |         ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: consider using `_level` instead
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `level` is never read
[INFO] [stderr]    --> src/markdown.rs:305:13
[INFO] [stderr]     |
[INFO] [stderr] 305 |             level += 1;
[INFO] [stderr]     |             ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `level` is never read
[INFO] [stderr]    --> src/markdown.rs:314:13
[INFO] [stderr]     |
[INFO] [stderr] 314 |             level += 1;
[INFO] [stderr]     |             ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/sql1.rs:492:9
[INFO] [stderr]     |
[INFO] [stderr] 492 |     let mut column_define_builder =
[INFO] [stderr]     |         ----^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `typ_enum` is never read
[INFO] [stderr]    --> src/sql1.rs:574:32
[INFO] [stderr]     |
[INFO] [stderr] 574 |             let mut typ_enum = IndexIdxTyeEnum::None;
[INFO] [stderr]     |                                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `typ_enum` is never read
[INFO] [stderr]    --> src/sql1.rs:626:32
[INFO] [stderr]     |
[INFO] [stderr] 626 |             let mut typ_enum = IndexIdxTyeEnum::None;
[INFO] [stderr]     |                                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/sql1.rs:648:9
[INFO] [stderr]     |
[INFO] [stderr] 648 |     let mut parse_if_not_exist = tuple((
[INFO] [stderr]     |         ----^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `u32`
[INFO] [stderr]    --> src/sql2_render.rs:101:32
[INFO] [stderr]     |
[INFO] [stderr] 101 |         DataTypeEnum::DateTime(u32) => "datetime".to_string(),
[INFO] [stderr]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_u32`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/sql2_render.rs:163:13
[INFO] [stderr]     |
[INFO] [stderr] 163 |         let mut ctx = Context::new();
[INFO] [stderr]     |             ----^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Element` is never constructed
[INFO] [stderr]   --> src/lib.rs:16:8
[INFO] [stderr]    |
[INFO] [stderr] 16 | struct Element {
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `the_letter_a` is never used
[INFO] [stderr]   --> src/lib.rs:23:4
[INFO] [stderr]    |
[INFO] [stderr] 23 | fn the_letter_a(input: &str) -> Result<(&str, ()), &str> {
[INFO] [stderr]    |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `match_literal` is never used
[INFO] [stderr]   --> src/lib.rs:31:4
[INFO] [stderr]    |
[INFO] [stderr] 31 | fn match_literal(expected: &'static str) -> impl Fn(&str) -> Result<(&str, ()), &str> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `identifier_v1` is never used
[INFO] [stderr]   --> src/lib.rs:39:4
[INFO] [stderr]    |
[INFO] [stderr] 39 | fn identifier_v1(input: &str) -> Result<(&str, String), &str> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `pair_v1` is never used
[INFO] [stderr]   --> src/lib.rs:58:4
[INFO] [stderr]    |
[INFO] [stderr] 58 | fn pair_v1<P1, P2, R1, R2>(
[INFO] [stderr]    |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `map_v1` is never used
[INFO] [stderr]   --> src/lib.rs:76:4
[INFO] [stderr]    |
[INFO] [stderr] 76 | fn map_v1<P, F, A, B>(parser: P, map_fn: F) -> impl Fn(&str) -> Result<(&str, B), &str>
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `ParseResult` is never used
[INFO] [stderr]   --> src/lib.rs:85:6
[INFO] [stderr]    |
[INFO] [stderr] 85 | type ParseResult<'a, Output> = Result<(&'a str, Output), &'a str>;
[INFO] [stderr]    |      ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `ParserV1` is never used
[INFO] [stderr]   --> src/lib.rs:87:7
[INFO] [stderr]    |
[INFO] [stderr] 87 | trait ParserV1<'a, Output> {
[INFO] [stderr]    |       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Parser` is never used
[INFO] [stderr]   --> src/lib.rs:91:7
[INFO] [stderr]    |
[INFO] [stderr] 91 | trait Parser<'a, Output> {
[INFO] [stderr]    |       ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `map` is never used
[INFO] [stderr]    --> src/lib.rs:135:4
[INFO] [stderr]     |
[INFO] [stderr] 135 | fn map<'a, P, F, A, B>(parser: P, map_fn: F) -> impl Parser<'a, B>
[INFO] [stderr]     |    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `pair_v2` is never used
[INFO] [stderr]    --> src/lib.rs:147:4
[INFO] [stderr]     |
[INFO] [stderr] 147 | fn pair_v2<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, (R1, R2)>
[INFO] [stderr]     |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `pair_v3` is never used
[INFO] [stderr]    --> src/lib.rs:161:4
[INFO] [stderr]     |
[INFO] [stderr] 161 | fn pair_v3<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, (R1, R2)>
[INFO] [stderr]     |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `pair` is never used
[INFO] [stderr]    --> src/lib.rs:185:4
[INFO] [stderr]     |
[INFO] [stderr] 185 | fn pair<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, (R1, R2)>
[INFO] [stderr]     |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `left` is never used
[INFO] [stderr]    --> src/lib.rs:199:4
[INFO] [stderr]     |
[INFO] [stderr] 199 | fn left<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, R1>
[INFO] [stderr]     |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `right` is never used
[INFO] [stderr]    --> src/lib.rs:208:4
[INFO] [stderr]     |
[INFO] [stderr] 208 | fn right<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, R2>
[INFO] [stderr]     |    ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `identifier` is never used
[INFO] [stderr]    --> src/lib.rs:218:4
[INFO] [stderr]     |
[INFO] [stderr] 218 | fn identifier(input: &str) -> ParseResult<String> {
[INFO] [stderr]     |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `one_or_more` is never used
[INFO] [stderr]    --> src/lib.rs:236:4
[INFO] [stderr]     |
[INFO] [stderr] 236 | fn one_or_more<'a, P, A>(parser: P) -> impl Parser<'a, Vec<A>>
[INFO] [stderr]     |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `zero_or_more` is never used
[INFO] [stderr]    --> src/lib.rs:256:4
[INFO] [stderr]     |
[INFO] [stderr] 256 | fn zero_or_more<'a, P, A>(parser: P) -> impl Parser<'a, Vec<A>>
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `any_char` is never used
[INFO] [stderr]    --> src/lib.rs:281:4
[INFO] [stderr]     |
[INFO] [stderr] 281 | fn any_char(input: &str) -> ParseResult<char> {
[INFO] [stderr]     |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `pred` is never used
[INFO] [stderr]    --> src/lib.rs:288:4
[INFO] [stderr]     |
[INFO] [stderr] 288 | fn pred<'a, P, A, F>(parser: P, predicate: F) -> impl Parser<'a, A>
[INFO] [stderr]     |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `whitespace_char` is never used
[INFO] [stderr]    --> src/lib.rs:303:4
[INFO] [stderr]     |
[INFO] [stderr] 303 | fn whitespace_char<'a>() -> impl Parser<'a, char> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `space1` is never used
[INFO] [stderr]    --> src/lib.rs:308:4
[INFO] [stderr]     |
[INFO] [stderr] 308 | fn space1<'a>() -> impl Parser<'a, Vec<char>> {
[INFO] [stderr]     |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `space0` is never used
[INFO] [stderr]    --> src/lib.rs:313:4
[INFO] [stderr]     |
[INFO] [stderr] 313 | fn space0<'a>() -> impl Parser<'a, Vec<char>> {
[INFO] [stderr]     |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `quoted_string_v1` is never used
[INFO] [stderr]    --> src/lib.rs:318:4
[INFO] [stderr]     |
[INFO] [stderr] 318 | fn quoted_string_v1<'a>() -> impl Parser<'a, String> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `attribute_pair` is never used
[INFO] [stderr]    --> src/lib.rs:331:4
[INFO] [stderr]     |
[INFO] [stderr] 331 | fn attribute_pair<'a>() -> impl Parser<'a, (String, String)> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `attributes` is never used
[INFO] [stderr]    --> src/lib.rs:336:4
[INFO] [stderr]     |
[INFO] [stderr] 336 | fn attributes<'a>() -> impl Parser<'a, Vec<(String, String)>> {
[INFO] [stderr]     |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `element_start` is never used
[INFO] [stderr]    --> src/lib.rs:340:4
[INFO] [stderr]     |
[INFO] [stderr] 340 | fn element_start<'a>() -> impl Parser<'a, (String, Vec<(String, String)>)> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `BoxedParser` is never constructed
[INFO] [stderr]    --> src/lib.rs:355:8
[INFO] [stderr]     |
[INFO] [stderr] 355 | struct BoxedParser<'a, Output> {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/lib.rs:360:8
[INFO] [stderr]     |
[INFO] [stderr] 359 | impl<'a, Output> BoxedParser<'a, Output> {
[INFO] [stderr]     | ---------------------------------------- associated function in this implementation
[INFO] [stderr] 360 |     fn new<P>(parser: P) -> Self
[INFO] [stderr]     |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `quoted_string` is never used
[INFO] [stderr]    --> src/lib.rs:376:4
[INFO] [stderr]     |
[INFO] [stderr] 376 | fn quoted_string<'a>() -> impl Parser<'a, String> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `single_element` is never used
[INFO] [stderr]    --> src/lib.rs:388:4
[INFO] [stderr]     |
[INFO] [stderr] 388 | fn single_element<'a>() -> impl Parser<'a, Element> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `open_element` is never used
[INFO] [stderr]    --> src/lib.rs:396:4
[INFO] [stderr]     |
[INFO] [stderr] 396 | fn open_element<'a>() -> impl Parser<'a, Element> {
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `either` is never used
[INFO] [stderr]    --> src/lib.rs:405:4
[INFO] [stderr]     |
[INFO] [stderr] 405 | fn either<'a, P1, P2, A>(parser1: P1, parser2: P2) -> impl Parser<'a, A>
[INFO] [stderr]     |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `element_v1` is never used
[INFO] [stderr]    --> src/lib.rs:416:4
[INFO] [stderr]     |
[INFO] [stderr] 416 | fn element_v1<'a>() -> impl Parser<'a, Element> {
[INFO] [stderr]     |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `close_element` is never used
[INFO] [stderr]    --> src/lib.rs:420:4
[INFO] [stderr]     |
[INFO] [stderr] 420 | fn close_element<'a>(expected_name: String) -> impl Parser<'a, String> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `and_then` is never used
[INFO] [stderr]    --> src/lib.rs:432:4
[INFO] [stderr]     |
[INFO] [stderr] 432 | fn and_then<'a, P, F, A, B, NextP>(parser: P, f: F) -> impl Parser<'a, B>
[INFO] [stderr]     |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parent_element` is never used
[INFO] [stderr]    --> src/lib.rs:444:4
[INFO] [stderr]     |
[INFO] [stderr] 444 | fn parent_element<'a>() -> impl Parser<'a, Element> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `whitespace_wrap` is never used
[INFO] [stderr]    --> src/lib.rs:454:4
[INFO] [stderr]     |
[INFO] [stderr] 454 | fn whitespace_wrap<'a, P, A>(parser: P) -> impl Parser<'a, A>
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `element` is never used
[INFO] [stderr]    --> src/lib.rs:461:4
[INFO] [stderr]     |
[INFO] [stderr] 461 | fn element<'a>() -> impl Parser<'a, Element> {
[INFO] [stderr]     |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Method` is never used
[INFO] [stderr]  --> src/http.rs:7:10
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub enum Method {
[INFO] [stderr]   |          ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/http.rs:20:12
[INFO] [stderr]    |
[INFO] [stderr] 19 | impl Method {
[INFO] [stderr]    | ----------- associated function in this implementation
[INFO] [stderr] 20 |     pub fn new(s: &[u8]) -> Method {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `compare_no_case` is never used
[INFO] [stderr]   --> src/http.rs:30:8
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub fn compare_no_case(left: &[u8], right: &[u8]) ->bool {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `JsonValue` is never used
[INFO] [stderr]   --> src/json.rs:21:10
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub enum JsonValue {
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_str` is never used
[INFO] [stderr]   --> src/json.rs:29:4
[INFO] [stderr]    |
[INFO] [stderr] 29 | fn parse_str<'a, E: ParseError<&'a str>>(i: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stderr]    |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `boolean` is never used
[INFO] [stderr]   --> src/json.rs:33:4
[INFO] [stderr]    |
[INFO] [stderr] 33 | fn boolean<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&'a str, bool, E> {
[INFO] [stderr]    |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `string` is never used
[INFO] [stderr]   --> src/json.rs:39:4
[INFO] [stderr]    |
[INFO] [stderr] 39 | fn string<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `array` is never used
[INFO] [stderr]   --> src/json.rs:48:4
[INFO] [stderr]    |
[INFO] [stderr] 48 | fn array<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stderr]    |    ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `key_value` is never used
[INFO] [stderr]   --> src/json.rs:63:4
[INFO] [stderr]    |
[INFO] [stderr] 63 | fn key_value<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stderr]    |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `hash` is never used
[INFO] [stderr]   --> src/json.rs:73:4
[INFO] [stderr]    |
[INFO] [stderr] 73 | fn hash<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stderr]    |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `json_value` is never used
[INFO] [stderr]   --> src/json.rs:96:4
[INFO] [stderr]    |
[INFO] [stderr] 96 | fn json_value<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `sp` is never used
[INFO] [stderr]    --> src/json.rs:114:4
[INFO] [stderr]     |
[INFO] [stderr] 114 | fn sp<'a, E: ParseError<&'a str>>(i: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stderr]     |    ^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `root` is never used
[INFO] [stderr]    --> src/json.rs:122:4
[INFO] [stderr]     |
[INFO] [stderr] 122 | fn root<'a, E: ParseError<&'a str> + ContextError<&'a str>>(
[INFO] [stderr]     |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Title` is never constructed
[INFO] [stderr]  --> src/markdown.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | struct Title {
[INFO] [stderr]   |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `TitleItem` is never constructed
[INFO] [stderr]   --> src/markdown.rs:10:8
[INFO] [stderr]    |
[INFO] [stderr] 10 | struct TitleItem {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `ElementList` is never used
[INFO] [stderr]   --> src/markdown.rs:15:6
[INFO] [stderr]    |
[INFO] [stderr] 15 | type ElementList = Vec<TitleItem>;
[INFO] [stderr]    |      ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MdBody` is never constructed
[INFO] [stderr]   --> src/markdown.rs:18:8
[INFO] [stderr]    |
[INFO] [stderr] 18 | struct MdBody {
[INFO] [stderr]    |        ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `the_letter_a` is never used
[INFO] [stderr]   --> src/markdown.rs:24:4
[INFO] [stderr]    |
[INFO] [stderr] 24 | fn the_letter_a(input: &str) -> Result<(&str, ()), &str> {
[INFO] [stderr]    |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `match_literal` is never used
[INFO] [stderr]   --> src/markdown.rs:32:4
[INFO] [stderr]    |
[INFO] [stderr] 32 | fn match_literal(expected: &'static str) -> impl Fn(&str) -> Result<(&str, ()), &str> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `ParseResult` is never used
[INFO] [stderr]   --> src/markdown.rs:40:6
[INFO] [stderr]    |
[INFO] [stderr] 40 | type ParseResult<'a, Output> = Result<(&'a str, Output), &'a str>;
[INFO] [stderr]    |      ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Parser` is never used
[INFO] [stderr]   --> src/markdown.rs:42:7
[INFO] [stderr]    |
[INFO] [stderr] 42 | trait Parser<'a, Output> {
[INFO] [stderr]    |       ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `and_then` is never used
[INFO] [stderr]   --> src/markdown.rs:85:4
[INFO] [stderr]    |
[INFO] [stderr] 85 | fn and_then<'a, P, F, A, B, NextP>(parser: P, f: F) -> impl Parser<'a, B>
[INFO] [stderr]    |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `pair` is never used
[INFO] [stderr]   --> src/markdown.rs:98:4
[INFO] [stderr]    |
[INFO] [stderr] 98 | fn pair<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, (R1, R2)>
[INFO] [stderr]    |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `left` is never used
[INFO] [stderr]    --> src/markdown.rs:112:4
[INFO] [stderr]     |
[INFO] [stderr] 112 | fn left<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, R1>
[INFO] [stderr]     |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `right` is never used
[INFO] [stderr]    --> src/markdown.rs:121:4
[INFO] [stderr]     |
[INFO] [stderr] 121 | fn right<'a, P1, P2, R1, R2>(parser1: P1, parser2: P2) -> impl Parser<'a, R2>
[INFO] [stderr]     |    ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `pred` is never used
[INFO] [stderr]    --> src/markdown.rs:130:4
[INFO] [stderr]     |
[INFO] [stderr] 130 | fn pred<'a, P, A, F>(parser: P, predicate: F) -> impl Parser<'a, A>
[INFO] [stderr]     |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `ExtMatch` is never used
[INFO] [stderr]    --> src/markdown.rs:145:7
[INFO] [stderr]     |
[INFO] [stderr] 145 | trait ExtMatch {
[INFO] [stderr]     |       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `recog_title` is never used
[INFO] [stderr]    --> src/markdown.rs:161:4
[INFO] [stderr]     |
[INFO] [stderr] 161 | fn recog_title(input: &str) -> Result<(&str, String), &str> {
[INFO] [stderr]     |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `map` is never used
[INFO] [stderr]    --> src/markdown.rs:180:4
[INFO] [stderr]     |
[INFO] [stderr] 180 | fn map<'a, P, F, A, B>(parser: P, map_fn: F) -> impl Parser<'a, B>
[INFO] [stderr]     |    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `BoxedParser` is never constructed
[INFO] [stderr]    --> src/markdown.rs:192:8
[INFO] [stderr]     |
[INFO] [stderr] 192 | struct BoxedParser<'a, Output> {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/markdown.rs:197:8
[INFO] [stderr]     |
[INFO] [stderr] 196 | impl<'a, Output> BoxedParser<'a, Output> {
[INFO] [stderr]     | ---------------------------------------- associated function in this implementation
[INFO] [stderr] 197 |     fn new<P>(parser: P) -> Self
[INFO] [stderr]     |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `recog_title_content` is never used
[INFO] [stderr]    --> src/markdown.rs:214:4
[INFO] [stderr]     |
[INFO] [stderr] 214 | fn recog_title_content(input: &str) -> ParseResult<String> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `one_or_more` is never used
[INFO] [stderr]    --> src/markdown.rs:232:4
[INFO] [stderr]     |
[INFO] [stderr] 232 | fn one_or_more<'a, P, A>(parser: P) -> impl Parser<'a, Vec<A>>
[INFO] [stderr]     |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `zero_or_more` is never used
[INFO] [stderr]    --> src/markdown.rs:252:4
[INFO] [stderr]     |
[INFO] [stderr] 252 | fn zero_or_more<'a, P, A>(parser: P) -> impl Parser<'a, Vec<A>>
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `any_char` is never used
[INFO] [stderr]    --> src/markdown.rs:266:4
[INFO] [stderr]     |
[INFO] [stderr] 266 | fn any_char(input: &str) -> ParseResult<char> {
[INFO] [stderr]     |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `whitespace_str` is never used
[INFO] [stderr]    --> src/markdown.rs:273:4
[INFO] [stderr]     |
[INFO] [stderr] 273 | fn whitespace_str<'a>() -> impl Parser<'a, char> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `space0` is never used
[INFO] [stderr]    --> src/markdown.rs:277:4
[INFO] [stderr]     |
[INFO] [stderr] 277 | fn space0<'a>() -> impl Parser<'a, Vec<char>> {
[INFO] [stderr]     |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `space1` is never used
[INFO] [stderr]    --> src/markdown.rs:281:4
[INFO] [stderr]     |
[INFO] [stderr] 281 | fn space1<'a>() -> impl Parser<'a, Vec<char>> {
[INFO] [stderr]     |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `title_content` is never used
[INFO] [stderr]    --> src/markdown.rs:285:4
[INFO] [stderr]     |
[INFO] [stderr] 285 | fn title_content<'a>() -> impl Parser<'a, String> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `title_level` is never used
[INFO] [stderr]    --> src/markdown.rs:299:4
[INFO] [stderr]     |
[INFO] [stderr] 299 | fn title_level(input: &str) -> ParseResult<String> {
[INFO] [stderr]     |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `title_level2` is never used
[INFO] [stderr]    --> src/markdown.rs:324:4
[INFO] [stderr]     |
[INFO] [stderr] 324 | fn title_level2(input: &str) -> ParseResult<u8> {
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `title_pair` is never used
[INFO] [stderr]    --> src/markdown.rs:352:4
[INFO] [stderr]     |
[INFO] [stderr] 352 | fn title_pair<'a>() -> impl Parser<'a, (u8, String)> {
[INFO] [stderr]     |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Title` is never constructed
[INFO] [stderr]   --> src/markdown_nom.rs:21:12
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub struct Title {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `MdValue` is never used
[INFO] [stderr]   --> src/markdown_nom.rs:27:10
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub enum MdValue {
[INFO] [stderr]    |          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Color` is never constructed
[INFO] [stderr]   --> src/nom1.rs:16:12
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub struct Color {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `from_hex` is never used
[INFO] [stderr]   --> src/nom1.rs:22:4
[INFO] [stderr]    |
[INFO] [stderr] 22 | fn from_hex(input: &str) -> Result<u8, std::num::ParseIntError> {
[INFO] [stderr]    |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `hex_primary` is never used
[INFO] [stderr]   --> src/nom1.rs:28:4
[INFO] [stderr]    |
[INFO] [stderr] 28 | fn hex_primary(input: &str) -> IResult<&str, u8> {
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_hex_digit` is never used
[INFO] [stderr]   --> src/nom1.rs:32:4
[INFO] [stderr]    |
[INFO] [stderr] 32 | fn is_hex_digit(c: char) -> bool {
[INFO] [stderr]    |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `hex_color` is never used
[INFO] [stderr]   --> src/nom1.rs:36:4
[INFO] [stderr]    |
[INFO] [stderr] 36 | fn hex_color(input: &str) -> IResult<&str, Color> {
[INFO] [stderr]    |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `md_title_level` is never used
[INFO] [stderr]   --> src/nom1.rs:42:4
[INFO] [stderr]    |
[INFO] [stderr] 42 | fn md_title_level(input: &str) -> IResult<&str, (&str, &str)> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `md_title_content_part` is never used
[INFO] [stderr]   --> src/nom1.rs:51:4
[INFO] [stderr]    |
[INFO] [stderr] 51 | fn md_title_content_part(input: &str) -> IResult<&str, &str> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `md_title_code_block` is never used
[INFO] [stderr]   --> src/nom1.rs:56:4
[INFO] [stderr]    |
[INFO] [stderr] 56 | fn md_title_code_block(input: &str) -> IResult<&str, &str> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `md_title_content` is never used
[INFO] [stderr]   --> src/nom1.rs:60:4
[INFO] [stderr]    |
[INFO] [stderr] 60 | fn md_title_content(input: &str) -> IResult<&str, Vec<&str>> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `md_title_content_dealed` is never used
[INFO] [stderr]   --> src/nom1.rs:80:4
[INFO] [stderr]    |
[INFO] [stderr] 80 | fn md_title_content_dealed(input: &str) -> IResult<&str, Vec<&str>> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_u32` is never used
[INFO] [stderr]    --> src/parse_num1.rs:178:4
[INFO] [stderr]     |
[INFO] [stderr] 178 | fn parse_u32(input: &[u8]) -> IResult<&[u8], &[u8]> {
[INFO] [stderr]     |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_u32_ver1` is never used
[INFO] [stderr]    --> src/parse_num1.rs:182:4
[INFO] [stderr]     |
[INFO] [stderr] 182 | fn parse_u32_ver1(input: &[u8]) -> nom::IResult<&[u8], u32> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_normal_str1` is never used
[INFO] [stderr]    --> src/parse_string.rs:298:4
[INFO] [stderr]     |
[INFO] [stderr] 298 | fn parse_normal_str1<'a>(input: &'a str) -> IResult<&'a str, String> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_normal_or_escaped_str` is never used
[INFO] [stderr]    --> src/parse_string.rs:355:4
[INFO] [stderr]     |
[INFO] [stderr] 355 | fn parse_normal_or_escaped_str(input: &str) -> IResult<&str, String> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_str_with_escaped_and_combine` is never used
[INFO] [stderr]    --> src/parse_string.rs:361:8
[INFO] [stderr]     |
[INFO] [stderr] 361 | pub fn parse_str_with_escaped_and_combine(input: &str) -> IResult<&str, String> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Fr` is never used
[INFO] [stderr]    --> src/parse_string.rs:391:6
[INFO] [stderr]     |
[INFO] [stderr] 391 | enum Fr<'a> {
[INFO] [stderr]     |      ^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `demo1` is never used
[INFO] [stderr]    --> src/parse_string.rs:395:4
[INFO] [stderr]     |
[INFO] [stderr] 395 | fn demo1() {
[INFO] [stderr]     |    ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `connect` is never used
[INFO] [stderr]  --> src/redis.rs:9:10
[INFO] [stderr]   |
[INFO] [stderr] 9 | async fn connect() -> Result<(), Box<dyn Error>> {
[INFO] [stderr]   |          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `TableSchema` is never constructed
[INFO] [stderr]    --> src/sql1.rs:801:8
[INFO] [stderr]     |
[INFO] [stderr] 801 | struct TableSchema {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_create_sql` is never used
[INFO] [stderr]    --> src/sql1.rs:808:4
[INFO] [stderr]     |
[INFO] [stderr] 808 | fn parse_create_sql(input: &str) -> IResult<&str, TableSchema> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `setting` is never read
[INFO] [stderr]    --> src/sql2_render.rs:140:5
[INFO] [stderr]     |
[INFO] [stderr] 136 | pub struct TypeRender {
[INFO] [stderr]     |            ---------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 140 |     setting: RenderSetting,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `TypeRender` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]   --> src/lib.rs:13:1
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub mod sql2_render;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/lib.rs:2:9
[INFO] [stderr]    |
[INFO] [stderr]  2 | #![warn(missing_docs)]
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/lib.rs:218:22
[INFO] [stderr]     |
[INFO] [stderr] 218 | fn identifier(input: &str) -> ParseResult<String> {
[INFO] [stderr]     |                      ^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 218 | fn identifier(input: &str) -> ParseResult<'_, String> {
[INFO] [stderr]     |                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/lib.rs:281:20
[INFO] [stderr]     |
[INFO] [stderr] 281 | fn any_char(input: &str) -> ParseResult<char> {
[INFO] [stderr]     |                    ^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                    |
[INFO] [stderr]     |                    the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 281 | fn any_char(input: &str) -> ParseResult<'_, char> {
[INFO] [stderr]     |                                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/markdown.rs:214:31
[INFO] [stderr]     |
[INFO] [stderr] 214 | fn recog_title_content(input: &str) -> ParseResult<String> {
[INFO] [stderr]     |                               ^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                               |
[INFO] [stderr]     |                               the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 214 | fn recog_title_content(input: &str) -> ParseResult<'_, String> {
[INFO] [stderr]     |                                                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/markdown.rs:266:20
[INFO] [stderr]     |
[INFO] [stderr] 266 | fn any_char(input: &str) -> ParseResult<char> {
[INFO] [stderr]     |                    ^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                    |
[INFO] [stderr]     |                    the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 266 | fn any_char(input: &str) -> ParseResult<'_, char> {
[INFO] [stderr]     |                                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/markdown.rs:299:23
[INFO] [stderr]     |
[INFO] [stderr] 299 | fn title_level(input: &str) -> ParseResult<String> {
[INFO] [stderr]     |                       ^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 299 | fn title_level(input: &str) -> ParseResult<'_, String> {
[INFO] [stderr]     |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/markdown.rs:324:24
[INFO] [stderr]     |
[INFO] [stderr] 324 | fn title_level2(input: &str) -> ParseResult<u8> {
[INFO] [stderr]     |                        ^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                        |
[INFO] [stderr]     |                        the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 324 | fn title_level2(input: &str) -> ParseResult<'_, u8> {
[INFO] [stderr]     |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:131:1
[INFO] [stderr]     |
[INFO] [stderr] 131 | pub fn parse_column_definition_of_null(input: &str) -> IResult<&str, String> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:139:1
[INFO] [stderr]     |
[INFO] [stderr] 139 | pub fn parse_column_definition_of_not_null(input: &str) -> IResult<&str, String> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:146:1
[INFO] [stderr]     |
[INFO] [stderr] 146 | pub fn identifier_char_parser(input: &str) -> IResult<&str, String> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]    --> src/sql1.rs:172:1
[INFO] [stderr]     |
[INFO] [stderr] 172 | pub enum DataTypeEnum {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:173:5
[INFO] [stderr]     |
[INFO] [stderr] 173 |     TinyInt,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:174:5
[INFO] [stderr]     |
[INFO] [stderr] 174 |     SmallInt,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:175:5
[INFO] [stderr]     |
[INFO] [stderr] 175 |     Int,
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:176:5
[INFO] [stderr]     |
[INFO] [stderr] 176 |     Bigint,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:177:5
[INFO] [stderr]     |
[INFO] [stderr] 177 |     VarChar(u32),
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:178:5
[INFO] [stderr]     |
[INFO] [stderr] 178 |     DateTime(u32),
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:179:5
[INFO] [stderr]     |
[INFO] [stderr] 179 |     Text,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:180:5
[INFO] [stderr]     |
[INFO] [stderr] 180 |     BigText,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:181:5
[INFO] [stderr]     |
[INFO] [stderr] 181 |     Decimal(u8),
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:182:5
[INFO] [stderr]     |
[INFO] [stderr] 182 |     Unknown,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]    --> src/sql1.rs:186:1
[INFO] [stderr]     |
[INFO] [stderr] 186 | pub enum DefaultEnum {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:187:5
[INFO] [stderr]     |
[INFO] [stderr] 187 |     DefaultNone, // 没有 default 语句
[INFO] [stderr]     |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:188:5
[INFO] [stderr]     |
[INFO] [stderr] 188 |     DefaultNull,
[INFO] [stderr]     |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:189:5
[INFO] [stderr]     |
[INFO] [stderr] 189 |     DefaultInt(u32),
[INFO] [stderr]     |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:190:5
[INFO] [stderr]     |
[INFO] [stderr] 190 |     DefaultStr(String),
[INFO] [stderr]     |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:191:5
[INFO] [stderr]     |
[INFO] [stderr] 191 |     DefaultCurStamp,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:192:5
[INFO] [stderr]     |
[INFO] [stderr] 192 |     DefaultAutoIncrement,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:193:5
[INFO] [stderr]     |
[INFO] [stderr] 193 |     DefaultCurStampOnUpdateCurStamp,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:194:5
[INFO] [stderr]     |
[INFO] [stderr] 194 |     DefaultOnUpdateCurStamp,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:195:5
[INFO] [stderr]     |
[INFO] [stderr] 195 |     Unknown,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:198:1
[INFO] [stderr]     |
[INFO] [stderr] 198 | pub fn type_int_size(input: &str) -> IResult<&str, u32> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:205:1
[INFO] [stderr]     |
[INFO] [stderr] 205 | pub fn type_tiny_int(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:212:1
[INFO] [stderr]     |
[INFO] [stderr] 212 | pub fn parse_int_auto_increment(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:219:1
[INFO] [stderr]     |
[INFO] [stderr] 219 | pub fn parse_int_is_unsigned(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:226:1
[INFO] [stderr]     |
[INFO] [stderr] 226 | pub fn type_some_int(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:252:1
[INFO] [stderr]     |
[INFO] [stderr] 252 | pub fn type_collate(input: &str) -> IResult<&str, String> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:260:1
[INFO] [stderr]     |
[INFO] [stderr] 260 | pub fn type_varchar(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:269:1
[INFO] [stderr]     |
[INFO] [stderr] 269 | pub fn type_datetime(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:282:1
[INFO] [stderr]     |
[INFO] [stderr] 282 | pub fn type_text(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:289:1
[INFO] [stderr]     |
[INFO] [stderr] 289 | pub fn type_bigtext(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:298:1
[INFO] [stderr]     |
[INFO] [stderr] 298 | pub fn type_decimal(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:305:1
[INFO] [stderr]     |
[INFO] [stderr] 305 | pub fn parse_data_type(input: &str) -> IResult<&str, DataTypeEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:312:1
[INFO] [stderr]     |
[INFO] [stderr] 312 | pub fn parse_default_int(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:319:1
[INFO] [stderr]     |
[INFO] [stderr] 319 | pub fn parse_default_str(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:331:1
[INFO] [stderr]     |
[INFO] [stderr] 331 | pub fn parse_comment(input: &str) -> IResult<&str, String> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:344:1
[INFO] [stderr]     |
[INFO] [stderr] 344 | pub fn parse_default_null(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:351:1
[INFO] [stderr]     |
[INFO] [stderr] 351 | pub fn parse_default_on_current_timestamp(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:366:1
[INFO] [stderr]     |
[INFO] [stderr] 366 | pub fn parse_default_current_timestamp(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:390:1
[INFO] [stderr]     |
[INFO] [stderr] 390 | pub fn parse_default(input: &str) -> IResult<&str, DefaultEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/sql1.rs:410:5
[INFO] [stderr]     |
[INFO] [stderr] 410 |     pub name: String,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/sql1.rs:411:5
[INFO] [stderr]     |
[INFO] [stderr] 411 |     pub typ: DataTypeEnum,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/sql1.rs:412:5
[INFO] [stderr]     |
[INFO] [stderr] 412 |     pub comment: String,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:421:1
[INFO] [stderr]     |
[INFO] [stderr] 421 | pub fn parse_end_has_comma(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:428:1
[INFO] [stderr]     |
[INFO] [stderr] 428 | pub fn parse_end_no_comma(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:437:1
[INFO] [stderr]     |
[INFO] [stderr] 437 | pub fn parse_end_comma(input: &str) -> IResult<&str, Option<i8>> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:467:1
[INFO] [stderr]     |
[INFO] [stderr] 467 | pub fn parse_column_definition2(input: &str) -> IResult<&str, OneLineEnum> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:491:1
[INFO] [stderr]     |
[INFO] [stderr] 491 | pub fn parse_many_column_definition(input: &str) -> IResult<&str, Vec<OneColumn>> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:516:5
[INFO] [stderr]     |
[INFO] [stderr] 516 |     Column(OneColumn),
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:517:5
[INFO] [stderr]     |
[INFO] [stderr] 517 |     Index(OneIndex),
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:523:5
[INFO] [stderr]     |
[INFO] [stderr] 523 |     Primary,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:524:5
[INFO] [stderr]     |
[INFO] [stderr] 524 |     Unique,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:525:5
[INFO] [stderr]     |
[INFO] [stderr] 525 |     Normal,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql1.rs:526:5
[INFO] [stderr]     |
[INFO] [stderr] 526 |     None,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql1.rs:555:1
[INFO] [stderr]     |
[INFO] [stderr] 555 | pub fn parse_idx_line(input: &str) -> IResult<&str, OneIndex> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/sql1.rs:709:5
[INFO] [stderr]     |
[INFO] [stderr] 709 |     pub engine: String,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/sql1.rs:710:5
[INFO] [stderr]     |
[INFO] [stderr] 710 |     pub charset: String,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/sql1.rs:711:5
[INFO] [stderr]     |
[INFO] [stderr] 711 |     pub collate: String,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/sql1.rs:712:5
[INFO] [stderr]     |
[INFO] [stderr] 712 |     pub comment: String,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]   --> src/sql2_render.rs:69:1
[INFO] [stderr]    |
[INFO] [stderr] 69 | pub fn to_big_case_camel_helper(args: &HashMap<String, Value>) -> tera::Result<Value> {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]   --> src/sql2_render.rs:92:1
[INFO] [stderr]    |
[INFO] [stderr] 92 | pub fn transfer_type(typ: DataTypeEnum) -> String {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/sql2_render.rs:112:1
[INFO] [stderr]     |
[INFO] [stderr] 112 | pub fn transfer_type_helper(args: &HashMap<String, Value>) -> tera::Result<Value> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]    --> src/sql2_render.rs:144:5
[INFO] [stderr]     |
[INFO] [stderr] 144 |     pub fn new() -> Self {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]    --> src/sql2_render.rs:216:1
[INFO] [stderr]     |
[INFO] [stderr] 216 | pub enum FieldNameStyleEnum {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql2_render.rs:218:5
[INFO] [stderr]     |
[INFO] [stderr] 218 |     SmallCaseCamel,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql2_render.rs:220:5
[INFO] [stderr]     |
[INFO] [stderr] 220 |     BigCaseCamel,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/sql2_render.rs:222:5
[INFO] [stderr]     |
[INFO] [stderr] 222 |     Underline,
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Err`, `VerboseError`, and `convert_error`
[INFO] [stderr]   --> src/json.rs:12:22
[INFO] [stderr]    |
[INFO] [stderr] 12 |     error::{context, convert_error, ContextError, ErrorKind, ParseError, VerboseError},
[INFO] [stderr]    |                      ^^^^^^^^^^^^^                                       ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 16 |     Err, IResult,
[INFO] [stderr]    |     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `is_alphabetic` and `is_digit`
[INFO] [stderr]    --> src/parse_string.rs:402:26
[INFO] [stderr]     |
[INFO] [stderr] 402 |     use nom::character::{is_alphabetic, is_digit};
[INFO] [stderr]     |                          ^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::map`
[INFO] [stderr]    --> src/parse_string.rs:404:9
[INFO] [stderr]     |
[INFO] [stderr] 404 |     use crate::map;
[INFO] [stderr]     |         ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `p1`
[INFO] [stderr]    --> src/parse_num1.rs:228:20
[INFO] [stderr]     |
[INFO] [stderr] 228 |         if let Ok((p1, p2)) = parse_u32("(12345)".as_bytes()) {
[INFO] [stderr]     |                    ^^ help: if this is intentional, prefix it with an underscore: `_p1`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `res`
[INFO] [stderr]   --> src/redis.rs:20:13
[INFO] [stderr]    |
[INFO] [stderr] 20 |         let res = connect();
[INFO] [stderr]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stderr] 
[INFO] [stderr] warning: function `identifier_v1` is never used
[INFO] [stderr]   --> src/lib.rs:39:4
[INFO] [stderr]    |
[INFO] [stderr] 39 | fn identifier_v1(input: &str) -> Result<(&str, String), &str> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Head`, `Options`, `Put`, `Delete`, `Trace`, and `Connect` are never constructed
[INFO] [stderr]   --> src/http.rs:10:3
[INFO] [stderr]    |
[INFO] [stderr]  7 | pub enum Method {
[INFO] [stderr]    |          ------ variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 10 |   Head,
[INFO] [stderr]    |   ^^^^
[INFO] [stderr] 11 |   Options,
[INFO] [stderr]    |   ^^^^^^^
[INFO] [stderr] 12 |   Put,
[INFO] [stderr]    |   ^^^
[INFO] [stderr] 13 |   Delete,
[INFO] [stderr]    |   ^^^^^^
[INFO] [stderr] 14 |   Trace,
[INFO] [stderr]    |   ^^^^^
[INFO] [stderr] 15 |   Connect,
[INFO] [stderr]    |   ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Method` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `level` is never read
[INFO] [stderr]  --> src/markdown.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | struct Title {
[INFO] [stderr]   |        ----- field in this struct
[INFO] [stderr] 5 |     level: u8,
[INFO] [stderr]   |     ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `Title` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `map`, `pred`, and `and_then` are never used
[INFO] [stderr]   --> src/markdown.rs:45:8
[INFO] [stderr]    |
[INFO] [stderr] 42 | trait Parser<'a, Output> {
[INFO] [stderr]    |       ------ methods in this trait
[INFO] [stderr] ...
[INFO] [stderr] 45 |     fn map<F, NewOutput>(self, map_fn: F) -> BoxedParser<'a, NewOutput>
[INFO] [stderr]    |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 55 |     fn pred<F>(self, pred_fn: F) -> BoxedParser<'a, Output>
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 64 |     fn and_then<F, NextParser, NewOutput>(self, f: F) -> BoxedParser<'a, NewOutput>
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `my-parser` (lib) generated 225 warnings (run `cargo fix --lib -p my-parser` to apply 44 suggestions)
[INFO] [stderr] warning: `my-parser` (lib test) generated 147 warnings (138 duplicates) (run `cargo fix --lib -p my-parser --tests` to apply 5 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.16s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/my_parser-8837687fd8d3147c)
[INFO] [stdout] 
[INFO] [stdout] running 64 tests
[INFO] [stdout] test http::tests::test_method_new ... ok
[INFO] [stdout] test markdown::tests::test_one_or_more ... ok
[INFO] [stdout] test markdown::tests::test_pair ... ok
[INFO] [stdout] test markdown::tests::test_is_valid_string ... ok
[INFO] [stdout] test json::tests::it_works ... ok
[INFO] [stdout] test markdown::tests::test_recog_title ... ok
[INFO] [stdout] test markdown::tests::test_right ... ok
[INFO] [stdout] test markdown::tests::test_recog_title_content ... ok
[INFO] [stdout] test markdown::tests::test_title_content ... ok
[INFO] [stdout] test markdown::tests::test_struct ... ok
[INFO] [stdout] test nom1::tests::test_from_hex ... ok
[INFO] [stdout] test nom1::tests::test_md_title_content ... ok
[INFO] [stdout] test parse_num1::tests::test_num1 ... ok
[INFO] [stdout] test parse_string::tests::test_parse_escaped ... ok
[INFO] [stdout] test parse_string::tests::test_parse_normal_or_escaped_str1 ... ok
[INFO] [stdout] test markdown::tests::test_title_pair ... ok
[INFO] [stdout] test sql1::tests::test_parse_column_definition1 ... ok
[INFO] [stdout] test markdown::tests::test_zero_or_more ... ok
[INFO] [stdout] test sql1::tests::test_parse_create_sql ... ok
[INFO] [stdout] test parse_string::tests::test_parse_normal_or_escaped_str2 ... ok
[INFO] [stdout] test sql1::tests::test_parse_data_type ... ok
[INFO] [stdout] test sql1::tests::test_parse_default ... ok
[INFO] [stdout] test sql1::tests::test_parse_idx_line2 ... ok
[INFO] [stdout] test parse_num1::tests::test_parse_u32_ver1 ... ok
[INFO] [stdout] test parse_string::tests::test_enum1 ... ok
[INFO] [stdout] test markdown::tests::test_predicate ... ok
[INFO] [stdout] test parse_string::tests::test_parse_normal_or_escaped_str_and_combine ... ok
[INFO] [stdout] test parse_string::tests::test1 ... ok
[INFO] [stdout] test sql1::tests::test_parse_column_definition_of_not_null ... ok
[INFO] [stdout] test sql1::tests::test_parse_many_column_definition2 ... ok
[INFO] [stdout] test sql1::tests::test_parse_str_with_escaped_and_combine_in_single_quote ... ok
[INFO] [stdout] test sql1::tests::test_parse_table_option ... ok
[INFO] [stdout] test sql1::tests::test_sql_identifier ... ok
[INFO] [stdout] test sql1::tests::test_table_option_engine ... ok
[INFO] [stdout] test sql1::tests::test_type_collate ... ok
[INFO] [stdout] test sql1::tests::test_type_tiny_int ... ok
[INFO] [stdout] test sql2_render::tests::test_upper_first ... ok
[INFO] [stdout] test sql2_render::tests::test_demo2 ... ok
[INFO] [stdout] test sql2_render::tests::test_type_render ... ok
[INFO] [stdout] test sql2_render::tests::render_demo1 ... ok
[INFO] [stdout] test tests::test_identifier_v1 ... ok
[INFO] [stdout] test tests::test_one_or_more ... ok
[INFO] [stdout] test tests::test_match_literal ... ok
[INFO] [stdout] test tests::test_pair ... ok
[INFO] [stdout] test tests::test_quoted_string ... ok
[INFO] [stdout] test tests::test_pred ... ok
[INFO] [stdout] test tests::test_the_letter_a ... ok
[INFO] [stdout] test tests::test_zero_or_more ... ok
[INFO] [stdout] test tests::xml_parser ... ok
[INFO] [stdout] test tests::attribute_parser ... ok
[INFO] [stdout] test parse_num1::tests::test_tag1 ... ok
[INFO] [stdout] test sql1::tests::test_table_option_char_set ... ok
[INFO] [stdout] test sql1::tests::test_table_option_collate ... ok
[INFO] [stdout] test sql1::tests::test_table_option_comment ... ok
[INFO] [stdout] test sql2_render::tests::test_identifier_case_camel ... ok
[INFO] [stdout] test tests::test_identifier ... ok
[INFO] [stdout] test nom1::tests::test_title_level ... FAILED
[INFO] [stdout] test parse_string::tests::test_parse_normal_or_escaped_str ... FAILED
[INFO] [stdout] test redis::tests::test_connect ... FAILED
[INFO] [stdout] test parse_string::tests::test2 ... FAILED
[INFO] [stdout] test sql1::tests::test_parse_many1_define_line ... FAILED
[INFO] [stdout] test sql1::tests::test_parse_many_column_definition ... FAILED
[INFO] [stdout] test sql1::tests::test_parse_column_definition_of_default ... FAILED
[INFO] [stdout] test tests::test_single_element ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- nom1::tests::test_title_level stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'nom1::tests::test_title_level' (40) panicked at src/nom1.rs:108:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: Ok(("MySQL 技术内幕\n* 第一个", ("##", " ")))
[INFO] [stdout]  right: Ok(("* 第一个", ("#", " ")))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized::<std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x55c28b1f65a2 - <<std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x55c28b20e3ea - <core[c5ed12ab89cc536a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x55c28b20e3ea - core[c5ed12ab89cc536a]::fmt::write
[INFO] [stdout]    6:     0x55c28b1fb756 - std[716c9a7a72e5c14e]::io::default_write_fmt::<alloc[9c68fdf4f4f29218]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x55c28b1fb756 - <alloc[9c68fdf4f4f29218]::vec::Vec<u8> as std[716c9a7a72e5c14e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x55c28b1d400f - <std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x55c28b1d400f - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x55c28b1ee3e9 - std[716c9a7a72e5c14e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x55c28ad3d0fe - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x55c28ad3d0fe - test[64760d2bdea328cc]::test_main_with_exit_callback::<test[64760d2bdea328cc]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x55c28b1ee5a2 - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x55c28b1ee5a2 - std[716c9a7a72e5c14e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x55c28b1d40c8 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x55c28b1cb9d9 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace::<std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x55c28b1d4f1d - __rustc[4f0b026143eab78e]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x55c28b20eb2c - core[c5ed12ab89cc536a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x55c28b20e9e3 - core[c5ed12ab89cc536a]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x55c28ad13dec - core[c5ed12ab89cc536a]::panicking::assert_failed::<core[c5ed12ab89cc536a]::result::Result<(&str, (&str, &str)), nom[ecbbf9aac03bc4ae]::internal::Err<nom[ecbbf9aac03bc4ae]::error::Error<&str>>>, core[c5ed12ab89cc536a]::result::Result<(&str, (&str, &str)), nom[ecbbf9aac03bc4ae]::internal::Err<nom[ecbbf9aac03bc4ae]::error::Error<&str>>>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x55c28ad2ff40 - my_parser[9a5f297530c4eb42]::nom1::tests::test_title_level
[INFO] [stdout]                                at /opt/rustwide/workdir/src/nom1.rs:108:9
[INFO] [stdout]   22:     0x55c28ad2f327 - my_parser[9a5f297530c4eb42]::nom1::tests::test_title_level::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/nom1.rs:107:26
[INFO] [stdout]   23:     0x55c28acf8136 - <my_parser[9a5f297530c4eb42]::nom1::tests::test_title_level::{closure#0} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x55c28ad314ab - <fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x55c28ad314ab - test[64760d2bdea328cc]::__rust_begin_short_backtrace::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x55c28ad3dd0a - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x55c28ad381d4 - test[64760d2bdea328cc]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x55c28ad381d4 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x55c28ad40802 - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x55c28ad40802 - <std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x55c28b1f5e1f - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn core[c5ed12ab89cc536a]::ops::function::FnOnce<(), Output = ()> + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   43:     0x55c28b1f5e1f - <std[716c9a7a72e5c14e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   44:     0x79a0c1a40aa4 - <unknown>
[INFO] [stdout]   45:     0x79a0c1acda64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- parse_string::tests::test_parse_normal_or_escaped_str stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'parse_string::tests::test_parse_normal_or_escaped_str' (48) panicked at src/parse_string.rs:454:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: Err(Error(Error { input: "\\\"Nico\\\"", code: Char }))
[INFO] [stdout]  right: Ok(("", "hello \"Nico\""))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized::<std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x55c28b1f65a2 - <<std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x55c28b20e3ea - <core[c5ed12ab89cc536a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x55c28b20e3ea - core[c5ed12ab89cc536a]::fmt::write
[INFO] [stdout]    6:     0x55c28b1fb756 - std[716c9a7a72e5c14e]::io::default_write_fmt::<alloc[9c68fdf4f4f29218]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x55c28b1fb756 - <alloc[9c68fdf4f4f29218]::vec::Vec<u8> as std[716c9a7a72e5c14e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x55c28b1d400f - <std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x55c28b1d400f - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x55c28b1ee3e9 - std[716c9a7a72e5c14e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x55c28ad3d0fe - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x55c28ad3d0fe - test[64760d2bdea328cc]::test_main_with_exit_callback::<test[64760d2bdea328cc]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x55c28b1ee5a2 - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x55c28b1ee5a2 - std[716c9a7a72e5c14e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x55c28b1d40c8 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x55c28b1cb9d9 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace::<std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x55c28b1d4f1d - __rustc[4f0b026143eab78e]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x55c28b20eb2c - core[c5ed12ab89cc536a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x55c28b20e9e3 - core[c5ed12ab89cc536a]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x55c28ad13d9b - core[c5ed12ab89cc536a]::panicking::assert_failed::<core[c5ed12ab89cc536a]::result::Result<(&str, alloc[9c68fdf4f4f29218]::string::String), nom[ecbbf9aac03bc4ae]::internal::Err<nom[ecbbf9aac03bc4ae]::error::Error<&str>>>, core[c5ed12ab89cc536a]::result::Result<(&str, alloc[9c68fdf4f4f29218]::string::String), nom[ecbbf9aac03bc4ae]::internal::Err<nom[ecbbf9aac03bc4ae]::error::Error<&str>>>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x55c28acd1526 - my_parser[9a5f297530c4eb42]::parse_string::tests::test_parse_normal_or_escaped_str
[INFO] [stdout]                                at /opt/rustwide/workdir/src/parse_string.rs:454:9
[INFO] [stdout]   22:     0x55c28acd00f7 - my_parser[9a5f297530c4eb42]::parse_string::tests::test_parse_normal_or_escaped_str::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/parse_string.rs:452:42
[INFO] [stdout]   23:     0x55c28acf7ef6 - <my_parser[9a5f297530c4eb42]::parse_string::tests::test_parse_normal_or_escaped_str::{closure#0} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x55c28ad314ab - <fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x55c28ad314ab - test[64760d2bdea328cc]::__rust_begin_short_backtrace::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x55c28ad3dd0a - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x55c28ad381d4 - test[64760d2bdea328cc]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x55c28ad381d4 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x55c28ad40802 - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x55c28ad40802 - <std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x55c28b1f5e1f - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn core[c5ed12ab89cc536a]::ops::function::FnOnce<(), Output = ()> + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   43:     0x55c28b1f5e1f - <std[716c9a7a72e5c14e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   44:     0x79a0c1a40aa4 - <unknown>
[INFO] [stdout]   45:     0x79a0c1acda64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- redis::tests::test_connect stdout ----
[INFO] [stdout] 123123
[INFO] [stdout] 
[INFO] [stdout] thread 'redis::tests::test_connect' (52) panicked at src/redis.rs:22:9:
[INFO] [stdout] assertion failed: false
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized::<std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x55c28b1f65a2 - <<std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x55c28b20e3ea - <core[c5ed12ab89cc536a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x55c28b20e3ea - core[c5ed12ab89cc536a]::fmt::write
[INFO] [stdout]    6:     0x55c28b1fb756 - std[716c9a7a72e5c14e]::io::default_write_fmt::<alloc[9c68fdf4f4f29218]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x55c28b1fb756 - <alloc[9c68fdf4f4f29218]::vec::Vec<u8> as std[716c9a7a72e5c14e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x55c28b1d400f - <std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x55c28b1d400f - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x55c28b1ee3e9 - std[716c9a7a72e5c14e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x55c28ad3d0fe - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x55c28ad3d0fe - test[64760d2bdea328cc]::test_main_with_exit_callback::<test[64760d2bdea328cc]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x55c28b1ee5a2 - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x55c28b1ee5a2 - std[716c9a7a72e5c14e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x55c28b1d40fa - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:691:13
[INFO] [stdout]   16:     0x55c28b1cb9d9 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace::<std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x55c28b1d4f1d - __rustc[4f0b026143eab78e]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x55c28b20eb2c - core[c5ed12ab89cc536a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x55c28b20eaf2 - core[c5ed12ab89cc536a]::panicking::panic
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:150:5
[INFO] [stdout]   20:     0x55c28acfc2d7 - my_parser[9a5f297530c4eb42]::redis::tests::test_connect
[INFO] [stdout]                                at /opt/rustwide/workdir/src/redis.rs:22:9
[INFO] [stdout]   21:     0x55c28acfc097 - my_parser[9a5f297530c4eb42]::redis::tests::test_connect::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/redis.rs:19:22
[INFO] [stdout]   22:     0x55c28acf8676 - <my_parser[9a5f297530c4eb42]::redis::tests::test_connect::{closure#0} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x55c28ad314ab - <fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x55c28ad314ab - test[64760d2bdea328cc]::__rust_begin_short_backtrace::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18
[INFO] [stdout]   25:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74
[INFO] [stdout]   26:     0x55c28ad3dd0a - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   27:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   28:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   29:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   30:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27
[INFO] [stdout]   31:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43
[INFO] [stdout]   32:     0x55c28ad381d4 - test[64760d2bdea328cc]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41
[INFO] [stdout]   33:     0x55c28ad381d4 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   34:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   35:     0x55c28ad40802 - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   36:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   37:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   38:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   39:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   40:     0x55c28ad40802 - <std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x55c28b1f5e1f - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn core[c5ed12ab89cc536a]::ops::function::FnOnce<(), Output = ()> + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   42:     0x55c28b1f5e1f - <std[716c9a7a72e5c14e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   43:     0x79a0c1a40aa4 - <unknown>
[INFO] [stdout]   44:     0x79a0c1acda64 - clone
[INFO] [stdout]   45:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- parse_string::tests::test2 stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'parse_string::tests::test2' (45) panicked at src/parse_string.rs:421:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: Err(Error(Error { input: "\\\"Nico\\\"\"", code: Tag }))
[INFO] [stdout]  right: Ok(("", "hello \"Nico\""))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized::<std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x55c28b1f65a2 - <<std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x55c28b20e3ea - <core[c5ed12ab89cc536a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x55c28b20e3ea - core[c5ed12ab89cc536a]::fmt::write
[INFO] [stdout]    6:     0x55c28b1fb756 - std[716c9a7a72e5c14e]::io::default_write_fmt::<alloc[9c68fdf4f4f29218]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x55c28b1fb756 - <alloc[9c68fdf4f4f29218]::vec::Vec<u8> as std[716c9a7a72e5c14e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x55c28b1d400f - <std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x55c28b1d400f - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x55c28b1ee3e9 - std[716c9a7a72e5c14e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x55c28ad3d0fe - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x55c28ad3d0fe - test[64760d2bdea328cc]::test_main_with_exit_callback::<test[64760d2bdea328cc]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x55c28b1ee5a2 - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x55c28b1ee5a2 - std[716c9a7a72e5c14e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x55c28b1d40c8 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x55c28b1cb9d9 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace::<std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x55c28b1d4f1d - __rustc[4f0b026143eab78e]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x55c28b20eb2c - core[c5ed12ab89cc536a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x55c28b20e9e3 - core[c5ed12ab89cc536a]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x55c28ad13d9b - core[c5ed12ab89cc536a]::panicking::assert_failed::<core[c5ed12ab89cc536a]::result::Result<(&str, alloc[9c68fdf4f4f29218]::string::String), nom[ecbbf9aac03bc4ae]::internal::Err<nom[ecbbf9aac03bc4ae]::error::Error<&str>>>, core[c5ed12ab89cc536a]::result::Result<(&str, alloc[9c68fdf4f4f29218]::string::String), nom[ecbbf9aac03bc4ae]::internal::Err<nom[ecbbf9aac03bc4ae]::error::Error<&str>>>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x55c28acd2426 - my_parser[9a5f297530c4eb42]::parse_string::tests::test2
[INFO] [stdout]                                at /opt/rustwide/workdir/src/parse_string.rs:421:9
[INFO] [stdout]   22:     0x55c28acd01e7 - my_parser[9a5f297530c4eb42]::parse_string::tests::test2::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/parse_string.rs:420:15
[INFO] [stdout]   23:     0x55c28acf8036 - <my_parser[9a5f297530c4eb42]::parse_string::tests::test2::{closure#0} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x55c28ad314ab - <fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x55c28ad314ab - test[64760d2bdea328cc]::__rust_begin_short_backtrace::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x55c28ad3dd0a - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x55c28ad381d4 - test[64760d2bdea328cc]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x55c28ad381d4 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x55c28ad40802 - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x55c28ad40802 - <std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x55c28b1f5e1f - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn core[c5ed12ab89cc536a]::ops::function::FnOnce<(), Output = ()> + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   43:     0x55c28b1f5e1f - <std[716c9a7a72e5c14e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   44:     0x79a0c1a40aa4 - <unknown>
[INFO] [stdout]   45:     0x79a0c1acda64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- sql1::tests::test_parse_many1_define_line stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'sql1::tests::test_parse_many1_define_line' (60) panicked at src/sql1.rs:1021:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: Ok(("", [Column(OneColumn { name: "id", typ: Bigint, comment: "主键" }), Index(OneIndex { name: "", using_type: None, typ: Primary, column_names: ["id"] })]))
[INFO] [stdout]  right: Ok(("", [Column(OneColumn { name: "id", typ: Bigint, comment: "主键" })]))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized::<std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x55c28b1f65a2 - <<std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x55c28b20e3ea - <core[c5ed12ab89cc536a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x55c28b20e3ea - core[c5ed12ab89cc536a]::fmt::write
[INFO] [stdout]    6:     0x55c28b1fb756 - std[716c9a7a72e5c14e]::io::default_write_fmt::<alloc[9c68fdf4f4f29218]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x55c28b1fb756 - <alloc[9c68fdf4f4f29218]::vec::Vec<u8> as std[716c9a7a72e5c14e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x55c28b1d400f - <std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x55c28b1d400f - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x55c28b1ee3e9 - std[716c9a7a72e5c14e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x55c28ad3d0fe - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x55c28ad3d0fe - test[64760d2bdea328cc]::test_main_with_exit_callback::<test[64760d2bdea328cc]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x55c28b1ee5a2 - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x55c28b1ee5a2 - std[716c9a7a72e5c14e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x55c28b1d40c8 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x55c28b1cb9d9 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace::<std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x55c28b1d4f1d - __rustc[4f0b026143eab78e]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x55c28b20eb2c - core[c5ed12ab89cc536a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x55c28b20e9e3 - core[c5ed12ab89cc536a]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x55c28ad139cf - core[c5ed12ab89cc536a]::panicking::assert_failed::<core[c5ed12ab89cc536a]::result::Result<(&str, alloc[9c68fdf4f4f29218]::vec::Vec<my_parser[9a5f297530c4eb42]::sql1::OneLineEnum>), nom[ecbbf9aac03bc4ae]::internal::Err<nom[ecbbf9aac03bc4ae]::error::Error<&str>>>, core[c5ed12ab89cc536a]::result::Result<(&str, alloc[9c68fdf4f4f29218]::vec::Vec<my_parser[9a5f297530c4eb42]::sql1::OneLineEnum>), nom[ecbbf9aac03bc4ae]::internal::Err<nom[ecbbf9aac03bc4ae]::error::Error<&str>>>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x55c28ad252c3 - my_parser[9a5f297530c4eb42]::sql1::tests::test_parse_many1_define_line
[INFO] [stdout]                                at /opt/rustwide/workdir/src/sql1.rs:1021:9
[INFO] [stdout]   22:     0x55c28ad21447 - my_parser[9a5f297530c4eb42]::sql1::tests::test_parse_many1_define_line::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/sql1.rs:1011:38
[INFO] [stdout]   23:     0x55c28acf84b6 - <my_parser[9a5f297530c4eb42]::sql1::tests::test_parse_many1_define_line::{closure#0} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x55c28ad314ab - <fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x55c28ad314ab - test[64760d2bdea328cc]::__rust_begin_short_backtrace::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x55c28ad3dd0a - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x55c28ad381d4 - test[64760d2bdea328cc]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x55c28ad381d4 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x55c28ad40802 - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x55c28ad40802 - <std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x55c28b1f5e1f - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn core[c5ed12ab89cc536a]::ops::function::FnOnce<(), Output = ()> + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   43:     0x55c28b1f5e1f - <std[716c9a7a72e5c14e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   44:     0x79a0c1a40aa4 - <unknown>
[INFO] [stdout]   45:     0x79a0c1acda64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- sql1::tests::test_parse_many_column_definition stdout ----
[INFO] [stdout] Err(Error(Error { input: "{`pwd` varchar(128) COLLATE utf8mb4_bin NOT NULL DEFAULT '1' COMMENT \"加密后的密码\",}", code: Tag }))
[INFO] [stdout] 
[INFO] [stdout] thread 'sql1::tests::test_parse_many_column_definition' (61) panicked at src/sql1.rs:966:9:
[INFO] [stdout] assertion failed: res.is_ok()
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized::<std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x55c28b1f65a2 - <<std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x55c28b20e3ea - <core[c5ed12ab89cc536a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x55c28b20e3ea - core[c5ed12ab89cc536a]::fmt::write
[INFO] [stdout]    6:     0x55c28b1fb756 - std[716c9a7a72e5c14e]::io::default_write_fmt::<alloc[9c68fdf4f4f29218]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x55c28b1fb756 - <alloc[9c68fdf4f4f29218]::vec::Vec<u8> as std[716c9a7a72e5c14e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x55c28b1d400f - <std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x55c28b1d400f - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x55c28b1ee3e9 - std[716c9a7a72e5c14e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x55c28ad3d0fe - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x55c28ad3d0fe - test[64760d2bdea328cc]::test_main_with_exit_callback::<test[64760d2bdea328cc]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x55c28b1ee5a2 - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x55c28b1ee5a2 - std[716c9a7a72e5c14e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x55c28b1d40fa - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:691:13
[INFO] [stdout]   16:     0x55c28b1cb9d9 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace::<std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x55c28b1d4f1d - __rustc[4f0b026143eab78e]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x55c28b20eb2c - core[c5ed12ab89cc536a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x55c28b20eaf2 - core[c5ed12ab89cc536a]::panicking::panic
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:150:5
[INFO] [stdout]   20:     0x55c28ad2569a - my_parser[9a5f297530c4eb42]::sql1::tests::test_parse_many_column_definition
[INFO] [stdout]                                at /opt/rustwide/workdir/src/sql1.rs:966:9
[INFO] [stdout]   21:     0x55c28ad214a7 - my_parser[9a5f297530c4eb42]::sql1::tests::test_parse_many_column_definition::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/sql1.rs:962:43
[INFO] [stdout]   22:     0x55c28acf8536 - <my_parser[9a5f297530c4eb42]::sql1::tests::test_parse_many_column_definition::{closure#0} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x55c28ad314ab - <fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x55c28ad314ab - test[64760d2bdea328cc]::__rust_begin_short_backtrace::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18
[INFO] [stdout]   25:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74
[INFO] [stdout]   26:     0x55c28ad3dd0a - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   27:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   28:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   29:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   30:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27
[INFO] [stdout]   31:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43
[INFO] [stdout]   32:     0x55c28ad381d4 - test[64760d2bdea328cc]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41
[INFO] [stdout]   33:     0x55c28ad381d4 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   34:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   35:     0x55c28ad40802 - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   36:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   37:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   38:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   39:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   40:     0x55c28ad40802 - <std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x55c28b1f5e1f - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn core[c5ed12ab89cc536a]::ops::function::FnOnce<(), Output = ()> + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   42:     0x55c28b1f5e1f - <std[716c9a7a72e5c14e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   43:     0x79a0c1a40aa4 - <unknown>
[INFO] [stdout]   44:     0x79a0c1acda64 - clone
[INFO] [stdout]   45:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- sql1::tests::test_parse_column_definition_of_default stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'sql1::tests::test_parse_column_definition_of_default' (54) panicked at src/sql1.rs:884:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: Ok(("", DefaultNull))
[INFO] [stdout]  right: Ok(("", DefaultStr("1")))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized::<std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x55c28b1f65a2 - <<std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x55c28b20e3ea - <core[c5ed12ab89cc536a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x55c28b20e3ea - core[c5ed12ab89cc536a]::fmt::write
[INFO] [stdout]    6:     0x55c28b1fb756 - std[716c9a7a72e5c14e]::io::default_write_fmt::<alloc[9c68fdf4f4f29218]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x55c28b1fb756 - <alloc[9c68fdf4f4f29218]::vec::Vec<u8> as std[716c9a7a72e5c14e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x55c28b1d400f - <std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x55c28b1d400f - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x55c28b1ee3e9 - std[716c9a7a72e5c14e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x55c28ad3d0fe - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x55c28ad3d0fe - test[64760d2bdea328cc]::test_main_with_exit_callback::<test[64760d2bdea328cc]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x55c28b1ee5a2 - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x55c28b1ee5a2 - std[716c9a7a72e5c14e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x55c28b1d40c8 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x55c28b1cb9d9 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace::<std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x55c28b1d4f1d - __rustc[4f0b026143eab78e]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x55c28b20eb2c - core[c5ed12ab89cc536a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x55c28b20e9e3 - core[c5ed12ab89cc536a]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x55c28ad13bb5 - core[c5ed12ab89cc536a]::panicking::assert_failed::<core[c5ed12ab89cc536a]::result::Result<(&str, my_parser[9a5f297530c4eb42]::sql1::DefaultEnum), nom[ecbbf9aac03bc4ae]::internal::Err<nom[ecbbf9aac03bc4ae]::error::Error<&str>>>, core[c5ed12ab89cc536a]::result::Result<(&str, my_parser[9a5f297530c4eb42]::sql1::DefaultEnum), nom[ecbbf9aac03bc4ae]::internal::Err<nom[ecbbf9aac03bc4ae]::error::Error<&str>>>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x55c28ad259c2 - my_parser[9a5f297530c4eb42]::sql1::tests::test_parse_column_definition_of_default
[INFO] [stdout]                                at /opt/rustwide/workdir/src/sql1.rs:884:9
[INFO] [stdout]   22:     0x55c28ad21507 - my_parser[9a5f297530c4eb42]::sql1::tests::test_parse_column_definition_of_default::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/sql1.rs:883:49
[INFO] [stdout]   23:     0x55c28acf85b6 - <my_parser[9a5f297530c4eb42]::sql1::tests::test_parse_column_definition_of_default::{closure#0} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x55c28ad314ab - <fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x55c28ad314ab - test[64760d2bdea328cc]::__rust_begin_short_backtrace::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x55c28ad3dd0a - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x55c28ad381d4 - test[64760d2bdea328cc]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x55c28ad381d4 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x55c28ad40802 - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x55c28ad40802 - <std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x55c28b1f5e1f - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn core[c5ed12ab89cc536a]::ops::function::FnOnce<(), Output = ()> + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   43:     0x55c28b1f5e1f - <std[716c9a7a72e5c14e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   44:     0x79a0c1a40aa4 - <unknown>
[INFO] [stdout]   45:     0x79a0c1acda64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tests::test_single_element stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::test_single_element' (85) panicked at src/lib.rs:566:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: Ok(("", Element { name: "div", attributes: [("class", "float")], children: [] }))
[INFO] [stdout]  right: Err(">")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized::<std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x55c28b1f65a2 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x55c28b1f65a2 - <<std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x55c28b20e3ea - <core[c5ed12ab89cc536a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x55c28b20e3ea - core[c5ed12ab89cc536a]::fmt::write
[INFO] [stdout]    6:     0x55c28b1fb756 - std[716c9a7a72e5c14e]::io::default_write_fmt::<alloc[9c68fdf4f4f29218]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x55c28b1fb756 - <alloc[9c68fdf4f4f29218]::vec::Vec<u8> as std[716c9a7a72e5c14e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x55c28b1d400f - <std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x55c28b1d400f - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x55c28b1ee3e9 - std[716c9a7a72e5c14e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x55c28ad3d0fe - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x55c28ad3d0fe - test[64760d2bdea328cc]::test_main_with_exit_callback::<test[64760d2bdea328cc]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x55c28b1ee5a2 - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x55c28b1ee5a2 - std[716c9a7a72e5c14e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x55c28b1d40c8 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x55c28b1cb9d9 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace::<std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x55c28b1d4f1d - __rustc[4f0b026143eab78e]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x55c28b20eb2c - core[c5ed12ab89cc536a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x55c28b20e9e3 - core[c5ed12ab89cc536a]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x55c28ad13ac2 - core[c5ed12ab89cc536a]::panicking::assert_failed::<core[c5ed12ab89cc536a]::result::Result<(&str, my_parser[9a5f297530c4eb42]::Element), &str>, core[c5ed12ab89cc536a]::result::Result<(&str, my_parser[9a5f297530c4eb42]::Element), &str>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x55c28ad0fc6f - my_parser[9a5f297530c4eb42]::tests::test_single_element
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:566:9
[INFO] [stdout]   22:     0x55c28ad0d007 - my_parser[9a5f297530c4eb42]::tests::test_single_element::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:565:29
[INFO] [stdout]   23:     0x55c28acf7bb6 - <my_parser[9a5f297530c4eb42]::tests::test_single_element::{closure#0} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x55c28ad314ab - <fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x55c28ad314ab - test[64760d2bdea328cc]::__rust_begin_short_backtrace::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x55c28ad3dd0a - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panicking::catch_unwind::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x55c28ad3dd0a - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test_in_process
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] [stdout]   32:     0x55c28ad3dd0a - test[64760d2bdea328cc]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x55c28ad381d4 - test[64760d2bdea328cc]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x55c28ad381d4 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x55c28ad40802 - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x55c28ad40802 - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x55c28ad40802 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x55c28ad40802 - <std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x55c28b1f5e1f - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn core[c5ed12ab89cc536a]::ops::function::FnOnce<(), Output = ()> + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   43:     0x55c28b1f5e1f - <std[716c9a7a72e5c14e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   44:     0x79a0c1a40aa4 - <unknown>
[INFO] [stdout]   45:     0x79a0c1acda64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     nom1::tests::test_title_level
[INFO] [stdout]     parse_string::tests::test2
[INFO] [stdout]     parse_string::tests::test_parse_normal_or_escaped_str
[INFO] [stdout]     redis::tests::test_connect
[INFO] [stdout]     sql1::tests::test_parse_column_definition_of_default
[INFO] [stdout]     sql1::tests::test_parse_many1_define_line
[INFO] [stdout]     sql1::tests::test_parse_many_column_definition
[INFO] [stdout]     tests::test_single_element
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 56 passed; 8 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "60da047c3c76028ec25b49810edf32c710fac770efbdfd96387b3b0bab353f13", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "60da047c3c76028ec25b49810edf32c710fac770efbdfd96387b3b0bab353f13", kill_on_drop: false }`
[INFO] [stdout] 60da047c3c76028ec25b49810edf32c710fac770efbdfd96387b3b0bab353f13
