[INFO] cloning repository https://github.com/malezjaa/marston [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/malezjaa/marston" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmalezjaa%2Fmarston", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmalezjaa%2Fmarston'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d8574c0b3765ecfe60abf8c12461cc257c9acfb2 [INFO] checking malezjaa/marston/d8574c0b3765ecfe60abf8c12461cc257c9acfb2 against master#0f353363965ebf05e0757f7679c800b39c51a07e for pr-144896 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmalezjaa%2Fmarston" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/malezjaa/marston [INFO] finished tweaking git repo https://github.com/malezjaa/marston [INFO] tweaked toml for git repo https://github.com/malezjaa/marston written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/malezjaa/marston on toolchain 0f353363965ebf05e0757f7679c800b39c51a07e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0f353363965ebf05e0757f7679c800b39c51a07e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/malezjaa/marston 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" "+0f353363965ebf05e0757f7679c800b39c51a07e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded fs-err v3.1.0 [INFO] [stderr] Downloaded fern v0.7.1 [INFO] [stderr] Downloaded lasso v0.7.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:ae6f63d130afcfff7f91f5ba9fdb2a74d52830289c6a2ea2d23a94dcfb480a0d" "/opt/rustwide/cargo-home/bin/cargo" "+0f353363965ebf05e0757f7679c800b39c51a07e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4c150542699b6961d9d5a32c46431ffaa00848fb3055f82b96140ad3d02ff8f2 [INFO] running `Command { std: "docker" "start" "-a" "4c150542699b6961d9d5a32c46431ffaa00848fb3055f82b96140ad3d02ff8f2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4c150542699b6961d9d5a32c46431ffaa00848fb3055f82b96140ad3d02ff8f2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4c150542699b6961d9d5a32c46431ffaa00848fb3055f82b96140ad3d02ff8f2", kill_on_drop: false }` [INFO] [stdout] 4c150542699b6961d9d5a32c46431ffaa00848fb3055f82b96140ad3d02ff8f2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:ae6f63d130afcfff7f91f5ba9fdb2a74d52830289c6a2ea2d23a94dcfb480a0d" "/opt/rustwide/cargo-home/bin/cargo" "+0f353363965ebf05e0757f7679c800b39c51a07e" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3a317679f4ef29414c9f5b601c79e16fc476beb520f9d67d5b860dd24c17b7d4 [INFO] running `Command { std: "docker" "start" "-a" "3a317679f4ef29414c9f5b601c79e16fc476beb520f9d67d5b860dd24c17b7d4", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Checking stable_deref_trait v1.2.0 [INFO] [stderr] Compiling semver v1.0.26 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling libc v0.2.172 [INFO] [stderr] Checking writeable v0.6.1 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Checking smallvec v1.15.0 [INFO] [stderr] Checking litemap v0.8.0 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Compiling icu_properties_data v2.0.1 [INFO] [stderr] Compiling icu_normalizer_data v2.0.0 [INFO] [stderr] Compiling zerocopy v0.8.25 [INFO] [stderr] Checking once_cell v1.21.3 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Checking equivalent v1.0.2 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Checking allocator-api2 v0.2.21 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling beef v0.5.2 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking hashbrown v0.15.3 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Checking percent-encoding v2.3.1 [INFO] [stderr] Checking winnow v0.7.10 [INFO] [stderr] Compiling camino v1.1.10 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling lock_api v0.4.13 [INFO] [stderr] Compiling fs-err v3.1.0 [INFO] [stderr] Compiling v_htmlescape v0.15.8 [INFO] [stderr] Checking utf8parse v0.2.2 [INFO] [stderr] Checking toml_write v0.1.2 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Compiling anyhow v1.0.98 [INFO] [stderr] Checking utf8_iter v1.0.4 [INFO] [stderr] Checking anstyle-parse v0.2.7 [INFO] [stderr] Checking form_urlencoded v1.2.1 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking unicode-width v0.1.14 [INFO] [stderr] Compiling rustix v1.0.7 [INFO] [stderr] Checking yansi v1.0.1 [INFO] [stderr] Checking anstyle v1.0.11 [INFO] [stderr] Checking log v0.4.27 [INFO] [stderr] Compiling logos-codegen v0.15.0 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Checking anstyle-query v1.1.3 [INFO] [stderr] Checking colorchoice v1.0.4 [INFO] [stderr] Checking indexmap v2.9.0 [INFO] [stderr] Checking is_terminal_polyfill v1.70.1 [INFO] [stderr] Compiling object v0.36.7 [INFO] [stderr] Checking crossbeam-deque v0.8.6 [INFO] [stderr] Compiling syn v2.0.101 [INFO] [stderr] Checking anstream v0.6.19 [INFO] [stderr] Checking ariadne v0.5.1 [INFO] [stderr] Checking itertools v0.14.0 [INFO] [stderr] Checking strsim v0.11.1 [INFO] [stderr] Checking gimli v0.31.1 [INFO] [stderr] Checking adler2 v2.0.0 [INFO] [stderr] Checking clap_lex v0.7.4 [INFO] [stderr] Checking bitflags v2.9.1 [INFO] [stderr] Checking linux-raw-sys v0.9.4 [INFO] [stderr] Checking rustc-hash v2.1.1 [INFO] [stderr] Checking mime v0.3.17 [INFO] [stderr] Checking miniz_oxide v0.8.8 [INFO] [stderr] Checking clap_builder v4.5.39 [INFO] [stderr] Checking colored v2.2.0 [INFO] [stderr] Checking rustc-demangle v0.1.24 [INFO] [stderr] Checking fern v0.7.1 [INFO] [stderr] Checking colored v3.0.0 [INFO] [stderr] Checking glob v0.3.2 [INFO] [stderr] Checking sysinfo v0.35.2 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking terminal_size v0.4.2 [INFO] [stderr] Checking dashmap v6.1.0 [INFO] [stderr] Checking regex-automata v0.4.9 [INFO] [stderr] Checking lasso v0.7.3 [INFO] [stderr] Checking clap v4.5.39 [INFO] [stderr] Checking addr2line v0.24.2 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Checking backtrace v0.3.75 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.0 [INFO] [stderr] Compiling zerovec-derive v0.11.1 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling logos-derive v0.15.0 [INFO] [stderr] Checking logos v0.15.0 [INFO] [stderr] Checking zerofrom v0.1.6 [INFO] [stderr] Checking yoke v0.8.0 [INFO] [stderr] Checking zerotrie v0.2.2 [INFO] [stderr] Checking zerovec v0.11.2 [INFO] [stderr] Checking tinystr v0.8.1 [INFO] [stderr] Checking potential_utf v0.1.2 [INFO] [stderr] Checking icu_collections v2.0.0 [INFO] [stderr] Checking icu_locale_core v2.0.0 [INFO] [stderr] Checking unic-langid-impl v0.9.6 [INFO] [stderr] Checking unic-langid v0.9.6 [INFO] [stderr] Checking icu_provider v2.0.0 [INFO] [stderr] Checking icu_normalizer v2.0.0 [INFO] [stderr] Checking icu_properties v2.0.1 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking idna v1.0.3 [INFO] [stderr] Checking url v2.5.4 [INFO] [stderr] Checking toml_datetime v0.6.11 [INFO] [stderr] Checking serde_spanned v0.6.9 [INFO] [stderr] Checking toml_edit v0.22.27 [INFO] [stderr] Checking toml v0.8.23 [INFO] [stderr] Checking marston-core v0.1.0 (/opt/rustwide/workdir/marston) [INFO] [stdout] warning: unused import: `resolve` [INFO] [stdout] --> marston/src/ast/mod.rs:3:39 [INFO] [stdout] | [INFO] [stdout] 3 | ast::ident_table::{get_or_intern, resolve}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Key` [INFO] [stdout] --> marston/src/ast/mod.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use lasso::{Key, Spur}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rustc_hash::FxHashMap` [INFO] [stdout] --> marston/src/ast/mod.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use rustc_hash::FxHashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Rodeo` [INFO] [stdout] --> marston/src/ast/ident_table.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use lasso::{Rodeo, Spur, ThreadedRodeo}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Block`, `MarstonDocument`, `Node`, and `get_or_intern` [INFO] [stdout] --> marston/src/codegen/generator.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 3 | Block, MarstonDocument, Node, ValueKind, [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^ ^^^^ [INFO] [stdout] 4 | ident_table::{get_or_intern, resolve}, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ast::MarstonDocument` [INFO] [stdout] --> marston/src/codegen/mod.rs:3:29 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::{MPath, MResult, ast::MarstonDocument}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `path::Path` and `self` [INFO] [stdout] --> marston/src/codegen/mod.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | fs::{self, File, create_dir_all}, [INFO] [stdout] | ^^^^ [INFO] [stdout] 6 | io::{BufWriter, Write}, [INFO] [stdout] 7 | path::Path, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MarstonDocument`, `Token`, and `ident_table::IdentTable` [INFO] [stdout] --> marston/src/context.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | ast::{MarstonDocument, ident_table::IdentTable, parser::Parser}, [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 9 | lexer::{Token, TokenKind}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `logos::Logos` [INFO] [stdout] --> marston/src/context.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use logos::Logos; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MPath` [INFO] [stdout] --> marston/src/info.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | MPath, Span, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> marston/src/info.rs:9:33 [INFO] [stdout] | [INFO] [stdout] 9 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Lexer` and `Span` [INFO] [stdout] --> marston/src/lexer.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use logos::{Lexer, Logos, Span}; [INFO] [stdout] | ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Span` [INFO] [stdout] --> marston/src/reports.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{MPath, Span}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `borrow::Cow` [INFO] [stdout] --> marston/src/reports.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | borrow::Cow, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AttributeEquals`, `BlockInfo`, and `tags::is_unique_tag` [INFO] [stdout] --> marston/src/validator/mod.rs:7:45 [INFO] [stdout] | [INFO] [stdout] 7 | html::{lang::is_valid_language_pattern, tags::is_unique_tag}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 8 | info::{BlockInfo, Info}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 12 | conditions::{AttributeEquals, Condition, ValidationContext}, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `::url::Url` [INFO] [stdout] --> marston/src/validator/mod.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use ::url::Url; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `collections::HashSet`, `fmt::format`, and `path::PathBuf` [INFO] [stdout] --> marston/src/validator/mod.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | use std::{collections::HashSet, fmt::format, path::PathBuf}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Span` and `Value` [INFO] [stdout] --> marston/src/validator/conditions.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | Span, [INFO] [stdout] | ^^^^ [INFO] [stdout] 3 | ast::{Block, Value}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `collections::HashMap` [INFO] [stdout] --> marston/src/validator/conditions.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | use std::{collections::HashMap, fmt::Debug}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MarstonDocument` and `get_or_intern` [INFO] [stdout] --> marston/src/validator/rules/block.rs:4:16 [INFO] [stdout] | [INFO] [stdout] 4 | Block, MarstonDocument, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 5 | ident_table::{get_or_intern, resolve}, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Attribute`, `Block`, `GenericValidator`, `ValueKind`, and `Value` [INFO] [stdout] --> marston/src/validator/rules/document.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | Attribute, Block, MarstonDocument, Value, ValueKind, [INFO] [stdout] | ^^^^^^^^^ ^^^^^ ^^^^^ ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 12 | GenericValidator, Validate, ValidationRule, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lasso::Spur` [INFO] [stdout] --> marston/src/validator/rules/document.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | use lasso::Spur; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `fmt::format` and `sync::Arc` [INFO] [stdout] --> marston/src/validator/rules/document.rs:27:33 [INFO] [stdout] | [INFO] [stdout] 27 | use std::{collections::HashMap, fmt::format, sync::Arc}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> marston/src/validator/rules/document.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 70 | if (!is_unique_tag(name.as_str())) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 70 - if (!is_unique_tag(name.as_str())) { [INFO] [stdout] 70 + if !is_unique_tag(name.as_str()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Attribute`, `BlockInfo`, `Block`, `ValidationRule`, `Value`, `conditions::AttributeEquals`, `get_or_intern`, `html::tags::is_unique_tag`, `resolve`, `rules::scripts::validate_script`, and `validate_block_no_children` [INFO] [stdout] --> marston/src/validator/rules/head.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | Attribute, Block, MarstonDocument, Value, ValueKind, [INFO] [stdout] | ^^^^^^^^^ ^^^^^ ^^^^^ [INFO] [stdout] 5 | ident_table::{get_or_intern, resolve}, [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] 6 | }, [INFO] [stdout] 7 | html::tags::is_unique_tag, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 8 | info::{BlockInfo, Info}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 12 | GenericValidator, Validate, ValidationRule, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 13 | conditions::AttributeEquals, rules::scripts::validate_script, validate_block_no_children, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lasso::Spur` [INFO] [stdout] --> marston/src/validator/rules/head.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use lasso::Spur; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `collections::HashMap`, `fmt::format`, and `sync::Arc` [INFO] [stdout] --> marston/src/validator/rules/head.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | use std::{collections::HashMap, fmt::format, sync::Arc}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RequiredExtension` [INFO] [stdout] --> marston/src/validator/rules/head.rs:20:29 [INFO] [stdout] | [INFO] [stdout] 20 | use crate::validator::url::{RequiredExtension, UrlValidation}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> marston/src/validator/rules/head.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | if (info.no_head) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 46 - if (info.no_head) { [INFO] [stdout] 46 + if info.no_head { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> marston/src/validator/rules/head.rs:61:8 [INFO] [stdout] | [INFO] [stdout] 61 | if (info.no_head) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 61 - if (info.no_head) { [INFO] [stdout] 61 + if info.no_head { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> marston/src/validator/rules/head.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 89 | if (info.no_head) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 89 - if (info.no_head) { [INFO] [stdout] 89 + if info.no_head { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> marston/src/validator/rules/head.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | if (info.no_head) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 118 - if (info.no_head) { [INFO] [stdout] 118 + if info.no_head { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> marston/src/validator/rules/head.rs:142:8 [INFO] [stdout] | [INFO] [stdout] 142 | if (info.no_head) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 142 - if (info.no_head) { [INFO] [stdout] 142 + if info.no_head { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> marston/src/validator/rules/head.rs:168:8 [INFO] [stdout] | [INFO] [stdout] 168 | if (info.no_head) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 168 - if (info.no_head) { [INFO] [stdout] 168 + if info.no_head { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Block` and `ident_table::get_or_intern` [INFO] [stdout] --> marston/src/validator/rules/link.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | ast::{Block, MarstonDocument, ident_table::get_or_intern}, [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Block` and `Span` [INFO] [stdout] --> marston/src/validator/rules/scripts.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | Span, [INFO] [stdout] | ^^^^ [INFO] [stdout] 3 | ast::{Block, MarstonDocument, ident_table::get_or_intern}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ValidationContext` [INFO] [stdout] --> marston/src/validator/url.rs:8:33 [INFO] [stdout] | [INFO] [stdout] 8 | conditions::{Condition, ValidationContext}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]` [INFO] [stdout] --> marston/src/lib.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | #[feature(let_chains)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `resolve` [INFO] [stdout] --> marston/src/ast/mod.rs:3:39 [INFO] [stdout] | [INFO] [stdout] 3 | ast::ident_table::{get_or_intern, resolve}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Key` [INFO] [stdout] --> marston/src/ast/mod.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use lasso::{Key, Spur}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rustc_hash::FxHashMap` [INFO] [stdout] --> marston/src/ast/mod.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use rustc_hash::FxHashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Rodeo` [INFO] [stdout] --> marston/src/ast/ident_table.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use lasso::{Rodeo, Spur, ThreadedRodeo}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Block`, `MarstonDocument`, `Node`, and `get_or_intern` [INFO] [stdout] --> marston/src/codegen/generator.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 3 | Block, MarstonDocument, Node, ValueKind, [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^ ^^^^ [INFO] [stdout] 4 | ident_table::{get_or_intern, resolve}, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ast::MarstonDocument` [INFO] [stdout] --> marston/src/codegen/mod.rs:3:29 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::{MPath, MResult, ast::MarstonDocument}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `path::Path` and `self` [INFO] [stdout] --> marston/src/codegen/mod.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | fs::{self, File, create_dir_all}, [INFO] [stdout] | ^^^^ [INFO] [stdout] 6 | io::{BufWriter, Write}, [INFO] [stdout] 7 | path::Path, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MarstonDocument`, `Token`, and `ident_table::IdentTable` [INFO] [stdout] --> marston/src/context.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | ast::{MarstonDocument, ident_table::IdentTable, parser::Parser}, [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 9 | lexer::{Token, TokenKind}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `logos::Logos` [INFO] [stdout] --> marston/src/context.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use logos::Logos; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MPath` [INFO] [stdout] --> marston/src/info.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | MPath, Span, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> marston/src/info.rs:9:33 [INFO] [stdout] | [INFO] [stdout] 9 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Lexer` and `Span` [INFO] [stdout] --> marston/src/lexer.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use logos::{Lexer, Logos, Span}; [INFO] [stdout] | ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Span` [INFO] [stdout] --> marston/src/reports.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{MPath, Span}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `borrow::Cow` [INFO] [stdout] --> marston/src/reports.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | borrow::Cow, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AttributeEquals`, `BlockInfo`, and `tags::is_unique_tag` [INFO] [stdout] --> marston/src/validator/mod.rs:7:45 [INFO] [stdout] | [INFO] [stdout] 7 | html::{lang::is_valid_language_pattern, tags::is_unique_tag}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 8 | info::{BlockInfo, Info}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 12 | conditions::{AttributeEquals, Condition, ValidationContext}, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `::url::Url` [INFO] [stdout] --> marston/src/validator/mod.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use ::url::Url; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `collections::HashSet`, `fmt::format`, and `path::PathBuf` [INFO] [stdout] --> marston/src/validator/mod.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | use std::{collections::HashSet, fmt::format, path::PathBuf}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Span` and `Value` [INFO] [stdout] --> marston/src/validator/conditions.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | Span, [INFO] [stdout] | ^^^^ [INFO] [stdout] 3 | ast::{Block, Value}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `collections::HashMap` [INFO] [stdout] --> marston/src/validator/conditions.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | use std::{collections::HashMap, fmt::Debug}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MarstonDocument` and `get_or_intern` [INFO] [stdout] --> marston/src/validator/rules/block.rs:4:16 [INFO] [stdout] | [INFO] [stdout] 4 | Block, MarstonDocument, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 5 | ident_table::{get_or_intern, resolve}, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Attribute`, `Block`, `GenericValidator`, `ValueKind`, and `Value` [INFO] [stdout] --> marston/src/validator/rules/document.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | Attribute, Block, MarstonDocument, Value, ValueKind, [INFO] [stdout] | ^^^^^^^^^ ^^^^^ ^^^^^ ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 12 | GenericValidator, Validate, ValidationRule, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lasso::Spur` [INFO] [stdout] --> marston/src/validator/rules/document.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | use lasso::Spur; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `fmt::format` and `sync::Arc` [INFO] [stdout] --> marston/src/validator/rules/document.rs:27:33 [INFO] [stdout] | [INFO] [stdout] 27 | use std::{collections::HashMap, fmt::format, sync::Arc}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> marston/src/validator/rules/document.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 70 | if (!is_unique_tag(name.as_str())) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 70 - if (!is_unique_tag(name.as_str())) { [INFO] [stdout] 70 + if !is_unique_tag(name.as_str()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Attribute`, `BlockInfo`, `Block`, `ValidationRule`, `Value`, `conditions::AttributeEquals`, `get_or_intern`, `html::tags::is_unique_tag`, `resolve`, `rules::scripts::validate_script`, and `validate_block_no_children` [INFO] [stdout] --> marston/src/validator/rules/head.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | Attribute, Block, MarstonDocument, Value, ValueKind, [INFO] [stdout] | ^^^^^^^^^ ^^^^^ ^^^^^ [INFO] [stdout] 5 | ident_table::{get_or_intern, resolve}, [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] 6 | }, [INFO] [stdout] 7 | html::tags::is_unique_tag, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 8 | info::{BlockInfo, Info}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 12 | GenericValidator, Validate, ValidationRule, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 13 | conditions::AttributeEquals, rules::scripts::validate_script, validate_block_no_children, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lasso::Spur` [INFO] [stdout] --> marston/src/validator/rules/head.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use lasso::Spur; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `collections::HashMap`, `fmt::format`, and `sync::Arc` [INFO] [stdout] --> marston/src/validator/rules/head.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | use std::{collections::HashMap, fmt::format, sync::Arc}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RequiredExtension` [INFO] [stdout] --> marston/src/validator/rules/head.rs:20:29 [INFO] [stdout] | [INFO] [stdout] 20 | use crate::validator::url::{RequiredExtension, UrlValidation}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> marston/src/validator/rules/head.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | if (info.no_head) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 46 - if (info.no_head) { [INFO] [stdout] 46 + if info.no_head { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> marston/src/validator/rules/head.rs:61:8 [INFO] [stdout] | [INFO] [stdout] 61 | if (info.no_head) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 61 - if (info.no_head) { [INFO] [stdout] 61 + if info.no_head { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> marston/src/validator/rules/head.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 89 | if (info.no_head) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 89 - if (info.no_head) { [INFO] [stdout] 89 + if info.no_head { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> marston/src/validator/rules/head.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | if (info.no_head) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 118 - if (info.no_head) { [INFO] [stdout] 118 + if info.no_head { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> marston/src/validator/rules/head.rs:142:8 [INFO] [stdout] | [INFO] [stdout] 142 | if (info.no_head) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 142 - if (info.no_head) { [INFO] [stdout] 142 + if info.no_head { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> marston/src/validator/rules/head.rs:168:8 [INFO] [stdout] | [INFO] [stdout] 168 | if (info.no_head) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 168 - if (info.no_head) { [INFO] [stdout] 168 + if info.no_head { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Block` and `ident_table::get_or_intern` [INFO] [stdout] --> marston/src/validator/rules/link.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | ast::{Block, MarstonDocument, ident_table::get_or_intern}, [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Block` and `Span` [INFO] [stdout] --> marston/src/validator/rules/scripts.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | Span, [INFO] [stdout] | ^^^^ [INFO] [stdout] 3 | ast::{Block, MarstonDocument, ident_table::get_or_intern}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ValidationContext` [INFO] [stdout] --> marston/src/validator/url.rs:8:33 [INFO] [stdout] | [INFO] [stdout] 8 | conditions::{Condition, ValidationContext}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]` [INFO] [stdout] --> marston/src/lib.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | #[feature(let_chains)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Validate` [INFO] [stdout] --> marston/src/validator/rules/head.rs:12:27 [INFO] [stdout] | [INFO] [stdout] 12 | GenericValidator, Validate, ValidationRule, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools::Itertools` [INFO] [stdout] --> marston/src/validator/rules/head.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use itertools::Itertools; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Validate` [INFO] [stdout] --> marston/src/validator/rules/head.rs:12:27 [INFO] [stdout] | [INFO] [stdout] 12 | GenericValidator, Validate, ValidationRule, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools::Itertools` [INFO] [stdout] --> marston/src/validator/rules/head.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use itertools::Itertools; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `info` [INFO] [stdout] --> marston/src/validator/rules/block.rs:28:54 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn validate_attributes_uniqueness(block: &Block, info: &mut Info) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_info` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `doc` [INFO] [stdout] --> marston/src/validator/rules/document.rs:86:29 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn ensure_required_tags(doc: &MarstonDocument, info: &mut Info) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_doc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `span` [INFO] [stdout] --> marston/src/validator/rules/head.rs:69:30 [INFO] [stdout] | [INFO] [stdout] 69 | .check_value(|value, span, _| { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_span` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ValueKindHelper` is never used [INFO] [stdout] --> marston/src/ast/mod.rs:122:10 [INFO] [stdout] | [INFO] [stdout] 122 | pub enum ValueKindHelper { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `ctx` is never read [INFO] [stdout] --> marston/src/ast/parser.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Parser<'a> { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 20 | pub ctx: &'a Context, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Parser` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> marston/src/ast/parser.rs:234:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl<'a> Parser<'a> { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 234 | pub fn check_any(&self, token_types: &[TokenKind]) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 249 | pub fn match_any(&mut self, token_types: &[TokenKind]) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 284 | pub fn consume_any(&mut self, token_types: &[TokenKind], message: &str) -> Option<&Token> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 294 | pub fn consume_any_with_span( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 322 | pub fn consume_identifier_with_span( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 338 | pub fn consume_specific_identifier(&mut self, expected: &str, message: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 350 | pub fn skip_until(&mut self, token_types: &[TokenKind]) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 373 | fn error_expected_any_token(&mut self, expected: &[TokenKind], message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 383 | fn error_expected_any_token_at_span( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 406 | fn error_expected_identifier_at_span(&mut self, message: &str, span: Range) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 434 | pub fn error_at_previous(&self, message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 448 | fn error_at_end(&self, message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 460 | pub fn error_with_label(&self, message: &str, label_span: Range, label_message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 470 | pub fn error_with_note(&self, message: &str, note: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 479 | pub fn check_sequence(&self, sequence: &[TokenKind]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `write` and `newline` are never used [INFO] [stdout] --> marston/src/codegen/mod.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl Codegen { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn write(&mut self, text: &str) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn newline(&mut self) -> &mut Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `cwd` is never read [INFO] [stdout] --> marston/src/context.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Context { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 19 | config: Config, [INFO] [stdout] 20 | cwd: MPath, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Context` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_element` is never used [INFO] [stdout] --> marston/src/html/ir.rs:353:4 [INFO] [stdout] | [INFO] [stdout] 353 | fn find_element(elements: &mut [IrNode], tag: Spur) -> &mut IrElement { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BlockId` is never constructed [INFO] [stdout] --> marston/src/info.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct BlockId(pub usize); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id`, `depth`, and `parent` are never read [INFO] [stdout] --> marston/src/info.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct BlockInfo { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 13 | pub id: usize, [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 16 | pub depth: usize, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 17 | pub parent: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BlockInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `all_blocks_named` and `find_blocks_by_name_and_parent` are never used [INFO] [stdout] --> marston/src/info.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl Info { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn all_blocks_named(&self, name: Spur) -> Vec<&BlockInfo> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn find_blocks_by_name_and_parent(&self, name: Spur, parent_name: Spur) -> Vec<&BlockInfo> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_start`, `move_by`, and `move_back_by` are never used [INFO] [stdout] --> marston/src/span.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait SpanUtils { [INFO] [stdout] | --------- methods in this trait [INFO] [stdout] 4 | fn to_start(&self) -> Range; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 8 | fn move_by(&self, offset: usize) -> Range; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 9 | fn move_back_by(&self, offset: usize) -> Range; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `url_validation` is never read [INFO] [stdout] --> marston/src/validator/mod.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 48 | pub struct GenericValidator { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 59 | url_validation: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `must_be_number`, `string_min_length_error`, `string_max_length_error`, `number_min`, `number_max`, and `number_positive` are never used [INFO] [stdout] --> marston/src/validator/mod.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 64 | impl GenericValidator { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn must_be_number(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 292 | pub fn string_min_length_error(self, min: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 328 | pub fn string_max_length_error(self, max: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 386 | pub fn number_min(self, min: f64) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 401 | pub fn number_max(self, max: f64) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 416 | pub fn number_positive(self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `join` is never used [INFO] [stdout] --> marston/src/validator/conditions.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl ConditionResult { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn join(self, other: ConditionResult) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `And` is never constructed [INFO] [stdout] --> marston/src/validator/conditions.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 72 | pub struct And { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_required` is never used [INFO] [stdout] --> marston/src/validator/conditions.rs:89:12 [INFO] [stdout] | [INFO] [stdout] 83 | impl GenericValidator { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn is_required(&self, context: &ValidationContext) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `info` [INFO] [stdout] --> marston/src/validator/rules/block.rs:28:54 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn validate_attributes_uniqueness(block: &Block, info: &mut Info) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_info` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `doc` [INFO] [stdout] --> marston/src/validator/rules/document.rs:86:29 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn ensure_required_tags(doc: &MarstonDocument, info: &mut Info) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_doc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `span` [INFO] [stdout] --> marston/src/validator/rules/head.rs:69:30 [INFO] [stdout] | [INFO] [stdout] 69 | .check_value(|value, span, _| { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_span` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ValueKindHelper` is never used [INFO] [stdout] --> marston/src/ast/mod.rs:122:10 [INFO] [stdout] | [INFO] [stdout] 122 | pub enum ValueKindHelper { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `ctx` is never read [INFO] [stdout] --> marston/src/ast/parser.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Parser<'a> { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 20 | pub ctx: &'a Context, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Parser` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> marston/src/ast/parser.rs:234:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl<'a> Parser<'a> { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 234 | pub fn check_any(&self, token_types: &[TokenKind]) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 249 | pub fn match_any(&mut self, token_types: &[TokenKind]) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 284 | pub fn consume_any(&mut self, token_types: &[TokenKind], message: &str) -> Option<&Token> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 294 | pub fn consume_any_with_span( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 322 | pub fn consume_identifier_with_span( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 338 | pub fn consume_specific_identifier(&mut self, expected: &str, message: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 350 | pub fn skip_until(&mut self, token_types: &[TokenKind]) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 373 | fn error_expected_any_token(&mut self, expected: &[TokenKind], message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 383 | fn error_expected_any_token_at_span( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 406 | fn error_expected_identifier_at_span(&mut self, message: &str, span: Range) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 434 | pub fn error_at_previous(&self, message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 448 | fn error_at_end(&self, message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 460 | pub fn error_with_label(&self, message: &str, label_span: Range, label_message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 470 | pub fn error_with_note(&self, message: &str, note: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 479 | pub fn check_sequence(&self, sequence: &[TokenKind]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `write` and `newline` are never used [INFO] [stdout] --> marston/src/codegen/mod.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl Codegen { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn write(&mut self, text: &str) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn newline(&mut self) -> &mut Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `cwd` is never read [INFO] [stdout] --> marston/src/context.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Context { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 19 | config: Config, [INFO] [stdout] 20 | cwd: MPath, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Context` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_element` is never used [INFO] [stdout] --> marston/src/html/ir.rs:353:4 [INFO] [stdout] | [INFO] [stdout] 353 | fn find_element(elements: &mut [IrNode], tag: Spur) -> &mut IrElement { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BlockId` is never constructed [INFO] [stdout] --> marston/src/info.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct BlockId(pub usize); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id`, `depth`, and `parent` are never read [INFO] [stdout] --> marston/src/info.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct BlockInfo { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 13 | pub id: usize, [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 16 | pub depth: usize, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 17 | pub parent: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BlockInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `all_blocks_named` and `find_blocks_by_name_and_parent` are never used [INFO] [stdout] --> marston/src/info.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl Info { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn all_blocks_named(&self, name: Spur) -> Vec<&BlockInfo> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn find_blocks_by_name_and_parent(&self, name: Spur, parent_name: Spur) -> Vec<&BlockInfo> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_start`, `move_by`, and `move_back_by` are never used [INFO] [stdout] --> marston/src/span.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait SpanUtils { [INFO] [stdout] | --------- methods in this trait [INFO] [stdout] 4 | fn to_start(&self) -> Range; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 8 | fn move_by(&self, offset: usize) -> Range; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 9 | fn move_back_by(&self, offset: usize) -> Range; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `url_validation` is never read [INFO] [stdout] --> marston/src/validator/mod.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 48 | pub struct GenericValidator { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 59 | url_validation: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `must_be_number`, `string_min_length_error`, `string_max_length_error`, `number_min`, `number_max`, and `number_positive` are never used [INFO] [stdout] --> marston/src/validator/mod.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 64 | impl GenericValidator { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn must_be_number(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 292 | pub fn string_min_length_error(self, min: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 328 | pub fn string_max_length_error(self, max: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 386 | pub fn number_min(self, min: f64) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 401 | pub fn number_max(self, max: f64) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 416 | pub fn number_positive(self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `join` is never used [INFO] [stdout] --> marston/src/validator/conditions.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl ConditionResult { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn join(self, other: ConditionResult) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `And` is never constructed [INFO] [stdout] --> marston/src/validator/conditions.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 72 | pub struct And { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_required` is never used [INFO] [stdout] --> marston/src/validator/conditions.rs:89:12 [INFO] [stdout] | [INFO] [stdout] 83 | impl GenericValidator { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn is_required(&self, context: &ValidationContext) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking marston v0.1.0 (/opt/rustwide/workdir/cli) [INFO] [stdout] warning: constant `NOP` is never used [INFO] [stdout] --> cli/src/clap.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub const NOP: Style = Style::new(); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WARN` is never used [INFO] [stdout] --> cli/src/clap.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const WARN: Style = AnsiColor::Yellow.on_default().effects(Effects::BOLD); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NOTE` is never used [INFO] [stdout] --> cli/src/clap.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const NOTE: Style = AnsiColor::Cyan.on_default().effects(Effects::BOLD); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GOOD` is never used [INFO] [stdout] --> cli/src/clap.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const GOOD: Style = AnsiColor::Green.on_default().effects(Effects::BOLD); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `positional` is never used [INFO] [stdout] --> cli/src/clap.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn positional(name: &'static str, help: &'static str) -> Arg { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COMPILATION_HEADING` is never used [INFO] [stdout] --> cli/src/clap.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | pub const COMPILATION_HEADING: &str = "Compilation options"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NOP` is never used [INFO] [stdout] --> cli/src/clap.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub const NOP: Style = Style::new(); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WARN` is never used [INFO] [stdout] --> cli/src/clap.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const WARN: Style = AnsiColor::Yellow.on_default().effects(Effects::BOLD); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NOTE` is never used [INFO] [stdout] --> cli/src/clap.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const NOTE: Style = AnsiColor::Cyan.on_default().effects(Effects::BOLD); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GOOD` is never used [INFO] [stdout] --> cli/src/clap.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const GOOD: Style = AnsiColor::Green.on_default().effects(Effects::BOLD); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `positional` is never used [INFO] [stdout] --> cli/src/clap.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn positional(name: &'static str, help: &'static str) -> Arg { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COMPILATION_HEADING` is never used [INFO] [stdout] --> cli/src/clap.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | pub const COMPILATION_HEADING: &str = "Compilation options"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 34.65s [INFO] running `Command { std: "docker" "inspect" "3a317679f4ef29414c9f5b601c79e16fc476beb520f9d67d5b860dd24c17b7d4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3a317679f4ef29414c9f5b601c79e16fc476beb520f9d67d5b860dd24c17b7d4", kill_on_drop: false }` [INFO] [stdout] 3a317679f4ef29414c9f5b601c79e16fc476beb520f9d67d5b860dd24c17b7d4