scan-rules 0.2.0

This crate provides some macros for quickly parsing values out of text. Roughly speaking, it does the inverse of the print!/format! macros; or, in other words, a similar job to scanf from C.
Documentation
Build #1492638 2024-11-04 09:09:24
# rustc version
rustc 1.84.0-nightly (b8c8287a2 2024-11-03)# docs.rs version
docsrs 0.6.0 (fd0fad95 2024-11-04)# build log
[INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace-builder/builds/scan-rules-0.2.0/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace-builder/builds/scan-rules-0.2.0/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace-builder/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace-builder/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "DOCS_RS=1" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "6442450944" "--cpus" "6" "--user" "1001:1001" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20241103-1.84.0-nightly-b8c8287a2\", \"--static-root-path\", \"/-/rustdoc.static/\", \"--cap-lints\", \"warn\", \"--extern-html-root-takes-precedence\"]" "--offline" "-Zunstable-options" "--config=doc.extern-map.registries.crates-io=\"https://docs.rs/{pkg_name}/{version}/x86_64-unknown-linux-gnu\"" "-Zrustdoc-scrape-examples" "-j6" "--target" "x86_64-unknown-linux-gnu", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 2a88169587e9543b047efc3b29b1efb7d399845b2eec48f57a98acf52f8ec60f
[INFO] running `Command { std: "docker" "start" "-a" "2a88169587e9543b047efc3b29b1efb7d399845b2eec48f57a98acf52f8ec60f", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021
[INFO] [stderr] warning: Rustdoc did not scrape the following examples because they require dev-dependencies: ask_age, runtime_scanners, scan_data
[INFO] [stderr]     If you want Rustdoc to scrape these examples, then add `doc-scrape-examples = true`
[INFO] [stderr]     to the [[example]] target configuration of at least one example.
[INFO] [stderr] warning: target filter specified, but no targets matched; this is a no-op
[INFO] [stderr]  Documenting scan-rules v0.2.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unexpected `cfg` condition name: `macro_inter_stmt_binding_visibility`
[INFO] [stderr]    --> src/macros.rs:128:7
[INFO] [stderr]     |
[INFO] [stderr] 128 | #[cfg(macro_inter_stmt_binding_visibility)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: expected names are: `clippy`, `debug_assertions`, `doc`, `docsrs`, `doctest`, `feature`, `fmt_debug`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `rustfmt`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `ub_checks`, `unix`, and `windows`
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(macro_inter_stmt_binding_visibility)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(macro_inter_stmt_binding_visibility)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolons
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove these semicolons
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:22:1
[INFO] [stderr]     |
[INFO] [stderr] 22  | / scanner! { impl<'a, K, V> ScanFromStr for BTreeMap<K, V> => BTreeMap, where {K: Ord} {
[INFO] [stderr] 23  | |     ("{", [ let es: KeyValuePair<K, V> ],*: BTreeMap<K, V>, "}", ..tail) => (es, tail)
[INFO] [stderr] 24  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:22:1
[INFO] [stderr]     |
[INFO] [stderr] 22  | / scanner! { impl<'a, K, V> ScanFromStr for BTreeMap<K, V> => BTreeMap, where {K: Ord} {
[INFO] [stderr] 23  | |     ("{", [ let es: KeyValuePair<K, V> ],*: BTreeMap<K, V>, "}", ..tail) => (es, tail)
[INFO] [stderr] 24  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolons
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove these semicolons
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:26:1
[INFO] [stderr]     |
[INFO] [stderr] 26  | / scanner! { impl<'a, T> ScanFromStr for BTreeSet<T> => BTreeSet, where {T: Ord} {
[INFO] [stderr] 27  | |     ("{", [ let es: T ],*: BTreeSet<_>, "}", ..tail) => (es, tail)
[INFO] [stderr] 28  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:26:1
[INFO] [stderr]     |
[INFO] [stderr] 26  | / scanner! { impl<'a, T> ScanFromStr for BTreeSet<T> => BTreeSet, where {T: Ord} {
[INFO] [stderr] 27  | |     ("{", [ let es: T ],*: BTreeSet<_>, "}", ..tail) => (es, tail)
[INFO] [stderr] 28  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolons
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove these semicolons
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:30:1
[INFO] [stderr]     |
[INFO] [stderr] 30  | / scanner! { impl<'a, T> ScanFromStr for BinaryHeap<T> => BinaryHeap, where {T: Ord} {
[INFO] [stderr] 31  | |     ("[", [ let es: T ],*: BinaryHeap<_>, "]", ..tail) => (es, tail)
[INFO] [stderr] 32  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:30:1
[INFO] [stderr]     |
[INFO] [stderr] 30  | / scanner! { impl<'a, T> ScanFromStr for BinaryHeap<T> => BinaryHeap, where {T: Ord} {
[INFO] [stderr] 31  | |     ("[", [ let es: T ],*: BinaryHeap<_>, "]", ..tail) => (es, tail)
[INFO] [stderr] 32  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolons
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove these semicolons
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:34:1
[INFO] [stderr]     |
[INFO] [stderr] 34  | / scanner! { impl<'a, K, V> ScanFromStr for HashMap<K, V> => HashMap, where {K: Hash + Eq} {
[INFO] [stderr] 35  | |     ("{", [ let es: KeyValuePair<K, V> ],*: HashMap<K, V>, "}", ..tail) => (es, tail)
[INFO] [stderr] 36  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:34:1
[INFO] [stderr]     |
[INFO] [stderr] 34  | / scanner! { impl<'a, K, V> ScanFromStr for HashMap<K, V> => HashMap, where {K: Hash + Eq} {
[INFO] [stderr] 35  | |     ("{", [ let es: KeyValuePair<K, V> ],*: HashMap<K, V>, "}", ..tail) => (es, tail)
[INFO] [stderr] 36  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolons
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove these semicolons
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:38:1
[INFO] [stderr]     |
[INFO] [stderr] 38  | / scanner! { impl<'a, T> ScanFromStr for HashSet<T> => HashSet, where {T: Hash + Eq} {
[INFO] [stderr] 39  | |     ("{", [ let es: T ],*: HashSet<_>, "}", ..tail) => (es, tail)
[INFO] [stderr] 40  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:38:1
[INFO] [stderr]     |
[INFO] [stderr] 38  | / scanner! { impl<'a, T> ScanFromStr for HashSet<T> => HashSet, where {T: Hash + Eq} {
[INFO] [stderr] 39  | |     ("{", [ let es: T ],*: HashSet<_>, "}", ..tail) => (es, tail)
[INFO] [stderr] 40  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolons
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove these semicolons
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:42:1
[INFO] [stderr]     |
[INFO] [stderr] 42  | / scanner! { impl<'a, T> ScanFromStr for LinkedList<T> => LinkedList {
[INFO] [stderr] 43  | |     ("[", [ let es: T ],*: LinkedList<_>, "]", ..tail) => (es, tail)
[INFO] [stderr] 44  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:42:1
[INFO] [stderr]     |
[INFO] [stderr] 42  | / scanner! { impl<'a, T> ScanFromStr for LinkedList<T> => LinkedList {
[INFO] [stderr] 43  | |     ("[", [ let es: T ],*: LinkedList<_>, "]", ..tail) => (es, tail)
[INFO] [stderr] 44  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolons
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove these semicolons
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:46:1
[INFO] [stderr]     |
[INFO] [stderr] 46  | / scanner! { impl<'a, T> ScanFromStr for Vec<T> => Vec {
[INFO] [stderr] 47  | |     ("[", [ let es: T ],*, "]", ..tail) => (es, tail)
[INFO] [stderr] 48  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:46:1
[INFO] [stderr]     |
[INFO] [stderr] 46  | / scanner! { impl<'a, T> ScanFromStr for Vec<T> => Vec {
[INFO] [stderr] 47  | |     ("[", [ let es: T ],*, "]", ..tail) => (es, tail)
[INFO] [stderr] 48  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolons
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove these semicolons
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:50:1
[INFO] [stderr]     |
[INFO] [stderr] 50  | / scanner! { impl<'a, T> ScanFromStr for VecDeque<T> => VecDeque {
[INFO] [stderr] 51  | |     ("[", [ let es: T ],*: VecDeque<_>, "]", ..tail) => (es, tail)
[INFO] [stderr] 52  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/collections.rs:50:1
[INFO] [stderr]     |
[INFO] [stderr] 50  | / scanner! { impl<'a, T> ScanFromStr for VecDeque<T> => VecDeque {
[INFO] [stderr] 51  | |     ("[", [ let es: T ],*: VecDeque<_>, "]", ..tail) => (es, tail)
[INFO] [stderr] 52  | | }}
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `scanner` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/scanner/std/net.rs:63:33
[INFO] [stderr]    |
[INFO] [stderr] 63 |                 matches!(b, b'0'...b'9' | b'a'...b'f' | b'A'...b'F'))
[INFO] [stderr]    |                                 ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/scanner/std/net.rs:63:47
[INFO] [stderr]    |
[INFO] [stderr] 63 |                 matches!(b, b'0'...b'9' | b'a'...b'f' | b'A'...b'F'))
[INFO] [stderr]    |                                               ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/scanner/std/net.rs:63:61
[INFO] [stderr]    |
[INFO] [stderr] 63 |                 matches!(b, b'0'...b'9' | b'a'...b'f' | b'A'...b'F'))
[INFO] [stderr]    |                                                             ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/scanner/std/net.rs:73:33
[INFO] [stderr]    |
[INFO] [stderr] 73 |                 matches!(b, b'0'...b'9'))
[INFO] [stderr]    |                                 ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/scanner/std/net.rs:209:50
[INFO] [stderr]     |
[INFO] [stderr] 209 |     ibs.take_while_ref(|&(_, b)| matches!(b, b'0'...b'9'))
[INFO] [stderr]     |                                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/scanner/std/time.rs:540:22
[INFO] [stderr]     |
[INFO] [stderr] 540 |             Some(('0'...'9', _)) => (),
[INFO] [stderr]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/scanner/std/time.rs:555:22
[INFO] [stderr]     |
[INFO] [stderr] 555 |             Some(('0'...'9', _)) => (),
[INFO] [stderr]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/scanner/std/time.rs:623:18
[INFO] [stderr]     |
[INFO] [stderr] 623 |         Some(('0'...'9', cur)) => cur,
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/scanner/std/time.rs:630:22
[INFO] [stderr]     |
[INFO] [stderr] 630 |             Some(('0'...'9', cur)) => cur,
[INFO] [stderr]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolons
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |     (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                              ^ help: remove these semicolons
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/mod.rs:49:5
[INFO] [stderr]     |
[INFO] [stderr] 49  |     impl_tuple! { T0 T1 T2 T3 }
[INFO] [stderr]     |     --------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `impl_tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |     (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                              ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/mod.rs:49:5
[INFO] [stderr]     |
[INFO] [stderr] 49  |     impl_tuple! { T0 T1 T2 T3 }
[INFO] [stderr]     |     --------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `impl_tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolons
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove these semicolons
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/mod.rs:93:5
[INFO] [stderr]     |
[INFO] [stderr] 93  | /     impl_array! {
[INFO] [stderr] 94  | |         8 e8 7 e7 6 e6 5 e5 4 e4 3 e3 2 e2 1 e1
[INFO] [stderr] 95  | |     }
[INFO] [stderr]     | |_____- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/macros.rs:743:30
[INFO] [stderr]     |
[INFO] [stderr] 743 |       (@as_stmt $s:stmt) => {$s;};
[INFO] [stderr]     |                                ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/scanner/std/mod.rs:93:5
[INFO] [stderr]     |
[INFO] [stderr] 93  | /     impl_array! {
[INFO] [stderr] 94  | |         8 e8 7 e7 6 e6 5 e5 4 e4 3 e3 2 e2 1 e1
[INFO] [stderr] 95  | |     }
[INFO] [stderr]     | |_____- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `scan_rules_impl` which comes from the expansion of the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/scanner/lang.rs:101:51
[INFO] [stderr]     |
[INFO] [stderr] 101 |         .take_while_ref(|&(_, b)| matches!(b, b'0'...b'9'))
[INFO] [stderr]     |                                                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/scanner/lang.rs:119:50
[INFO] [stderr]     |
[INFO] [stderr] 119 |         ibs.take_while(|&(_, b)| matches!(b, b'0'...b'9'))
[INFO] [stderr]     |                                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/scanner/lang.rs:129:59
[INFO] [stderr]     |
[INFO] [stderr] 129 |                 .take_while_ref(|&(_, b)| matches!(b, b'0'...b'9'))
[INFO] [stderr]     |                                                           ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/scanner/lang.rs:323:29
[INFO] [stderr]     |
[INFO] [stderr] 323 |             matches!(b, b'0'...b'9' | b'a'...b'f' | b'A'...b'F'))
[INFO] [stderr]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/scanner/lang.rs:323:43
[INFO] [stderr]     |
[INFO] [stderr] 323 |             matches!(b, b'0'...b'9' | b'a'...b'f' | b'A'...b'F'))
[INFO] [stderr]     |                                           ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/scanner/lang.rs:323:57
[INFO] [stderr]     |
[INFO] [stderr] 323 |             matches!(b, b'0'...b'9' | b'a'...b'f' | b'A'...b'F'))
[INFO] [stderr]     |                                                         ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/scanner/lang.rs:331:47
[INFO] [stderr]     |
[INFO] [stderr] 331 |         .take_while(|&(_, b)| matches!(b, b'0'...b'7'))
[INFO] [stderr]     |                                               ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/scanner/lang.rs:345:46
[INFO] [stderr]     |
[INFO] [stderr] 345 |     ibs.take_while(|&(_, b)| matches!(b, b'0'...b'9'))
[INFO] [stderr]     |                                              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/scanner/lang.rs:359:46
[INFO] [stderr]     |
[INFO] [stderr] 359 |     ibs.take_while(|&(_, b)| matches!(b, b'0'...b'9'))
[INFO] [stderr]     |                                              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]   --> src/scanner/misc.rs:52:7
[INFO] [stderr]    |
[INFO] [stderr] 52 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]   --> src/scanner/misc.rs:61:7
[INFO] [stderr]    |
[INFO] [stderr] 61 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]   --> src/scanner/misc.rs:70:11
[INFO] [stderr]    |
[INFO] [stderr] 70 | #[cfg(not(str_into_output_extra_broken))]
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:119:7
[INFO] [stderr]     |
[INFO] [stderr] 119 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:140:7
[INFO] [stderr]     |
[INFO] [stderr] 140 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:161:11
[INFO] [stderr]     |
[INFO] [stderr] 161 | #[cfg(not(str_into_output_extra_broken))]
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:220:7
[INFO] [stderr]     |
[INFO] [stderr] 220 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:240:7
[INFO] [stderr]     |
[INFO] [stderr] 240 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:259:11
[INFO] [stderr]     |
[INFO] [stderr] 259 | #[cfg(not(str_into_output_extra_broken))]
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:344:7
[INFO] [stderr]     |
[INFO] [stderr] 344 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:354:7
[INFO] [stderr]     |
[INFO] [stderr] 354 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:364:11
[INFO] [stderr]     |
[INFO] [stderr] 364 | #[cfg(not(str_into_output_extra_broken))]
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:417:7
[INFO] [stderr]     |
[INFO] [stderr] 417 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:437:7
[INFO] [stderr]     |
[INFO] [stderr] 437 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:457:11
[INFO] [stderr]     |
[INFO] [stderr] 457 | #[cfg(not(str_into_output_extra_broken))]
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:522:7
[INFO] [stderr]     |
[INFO] [stderr] 522 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:540:7
[INFO] [stderr]     |
[INFO] [stderr] 540 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:558:11
[INFO] [stderr]     |
[INFO] [stderr] 558 | #[cfg(not(str_into_output_extra_broken))]
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:614:7
[INFO] [stderr]     |
[INFO] [stderr] 614 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:632:7
[INFO] [stderr]     |
[INFO] [stderr] 632 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:650:11
[INFO] [stderr]     |
[INFO] [stderr] 650 | #[cfg(not(str_into_output_extra_broken))]
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:827:7
[INFO] [stderr]     |
[INFO] [stderr] 827 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:848:7
[INFO] [stderr]     |
[INFO] [stderr] 848 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:869:11
[INFO] [stderr]     |
[INFO] [stderr] 869 | #[cfg(not(str_into_output_extra_broken))]
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:926:7
[INFO] [stderr]     |
[INFO] [stderr] 926 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:944:7
[INFO] [stderr]     |
[INFO] [stderr] 944 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]    --> src/scanner/misc.rs:962:11
[INFO] [stderr]     |
[INFO] [stderr] 962 | #[cfg(not(str_into_output_extra_broken))]
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]     --> src/scanner/misc.rs:1017:7
[INFO] [stderr]      |
[INFO] [stderr] 1017 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = help: consider using a Cargo feature instead
[INFO] [stderr]      = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]               [lints.rust]
[INFO] [stderr]               unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]      = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]     --> src/scanner/misc.rs:1036:7
[INFO] [stderr]      |
[INFO] [stderr] 1036 | #[cfg(str_into_output_extra_broken)]
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = help: consider using a Cargo feature instead
[INFO] [stderr]      = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]               [lints.rust]
[INFO] [stderr]               unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]      = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `str_into_output_extra_broken`
[INFO] [stderr]     --> src/scanner/misc.rs:1055:11
[INFO] [stderr]      |
[INFO] [stderr] 1055 | #[cfg(not(str_into_output_extra_broken))]
[INFO] [stderr]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = help: consider using a Cargo feature instead
[INFO] [stderr]      = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]               [lints.rust]
[INFO] [stderr]               unexpected_cfgs = { level = "warn", check-cfg = ['cfg(str_into_output_extra_broken)'] }
[INFO] [stderr]      = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(str_into_output_extra_broken)");` to the top of the `build.rs`
[INFO] [stderr]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/scanner/misc.rs:188:19
[INFO] [stderr]     |
[INFO] [stderr] 188 |             '\x0a'...'\x0d' | '\u{85}' | '\u{2028}' | '\u{2029}' => false,
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/util.rs:302:13
[INFO] [stderr]     |
[INFO] [stderr] 302 |         b'0'...b'9' | b'a'...b'f' | b'A'...b'F' => true,
[INFO] [stderr]     |             ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/util.rs:302:27
[INFO] [stderr]     |
[INFO] [stderr] 302 |         b'0'...b'9' | b'a'...b'f' | b'A'...b'F' => true,
[INFO] [stderr]     |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/util.rs:302:41
[INFO] [stderr]     |
[INFO] [stderr] 302 |         b'0'...b'9' | b'a'...b'f' | b'A'...b'F' => true,
[INFO] [stderr]     |                                         ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `scan-rules` (lib doc) generated 101 warnings (28 duplicates) (run `cargo fix --lib -p scan-rules` to apply 22 suggestions)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.48s
[INFO] [stderr]    Generated /opt/rustwide/target/x86_64-unknown-linux-gnu/doc/scan_rules/index.html
[INFO] running `Command { std: "docker" "inspect" "2a88169587e9543b047efc3b29b1efb7d399845b2eec48f57a98acf52f8ec60f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2a88169587e9543b047efc3b29b1efb7d399845b2eec48f57a98acf52f8ec60f", kill_on_drop: false }`
[INFO] [stdout] 2a88169587e9543b047efc3b29b1efb7d399845b2eec48f57a98acf52f8ec60f