[INFO] cloning repository https://github.com/AviiNL/brigadier-rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AviiNL/brigadier-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAviiNL%2Fbrigadier-rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAviiNL%2Fbrigadier-rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d6c82225c71ef0e52e67cb9a7720d97b4f2785af [INFO] checking AviiNL/brigadier-rs against try#93086cfebfccb79083c59d0d3b2052944bba643c for pr-146440-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAviiNL%2Fbrigadier-rs" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/AviiNL/brigadier-rs [INFO] finished tweaking git repo https://github.com/AviiNL/brigadier-rs [INFO] tweaked toml for git repo https://github.com/AviiNL/brigadier-rs written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/AviiNL/brigadier-rs on toolchain 93086cfebfccb79083c59d0d3b2052944bba643c [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+93086cfebfccb79083c59d0d3b2052944bba643c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/AviiNL/brigadier-rs already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+93086cfebfccb79083c59d0d3b2052944bba643c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+93086cfebfccb79083c59d0d3b2052944bba643c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b6d3dd4e03449a7fc28dfb9e577a58a5f90d38226b26f60ecc2b4b8047efc9dc [INFO] running `Command { std: "docker" "start" "-a" "b6d3dd4e03449a7fc28dfb9e577a58a5f90d38226b26f60ecc2b4b8047efc9dc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b6d3dd4e03449a7fc28dfb9e577a58a5f90d38226b26f60ecc2b4b8047efc9dc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b6d3dd4e03449a7fc28dfb9e577a58a5f90d38226b26f60ecc2b4b8047efc9dc", kill_on_drop: false }` [INFO] [stdout] b6d3dd4e03449a7fc28dfb9e577a58a5f90d38226b26f60ecc2b4b8047efc9dc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+93086cfebfccb79083c59d0d3b2052944bba643c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e92bfd254d1e2a19997bc44344652c6fc185593d8f83fcc4e5a8fc9536b94096 [INFO] running `Command { std: "docker" "start" "-a" "e92bfd254d1e2a19997bc44344652c6fc185593d8f83fcc4e5a8fc9536b94096", kill_on_drop: false }` [INFO] [stderr] Checking linked-hash-map v0.5.6 [INFO] [stderr] Checking brigadier v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `any::Any` [INFO] [stdout] --> src/context/command_context.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{any::Any, collections::HashMap}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `linked_hash_map::LinkedHashMap` [INFO] [stdout] --> src/tree/literal_command_node.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use linked_hash_map::LinkedHashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `source` [INFO] [stdout] --> src/command_dispatcher.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | source: S, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `command` [INFO] [stdout] --> src/tree/literal_command_node.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | command: Option>>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_command` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `requirement` [INFO] [stdout] --> src/tree/literal_command_node.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | requirement: Box bool>, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_requirement` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `source` [INFO] [stdout] --> src/tree/literal_command_node.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | fn can_use(&self, source: &S) -> bool { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `finder` [INFO] [stdout] --> src/tree/literal_command_node.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | finder: &mut Box>, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_finder` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/tree/literal_command_node.rs:39:30 [INFO] [stdout] | [INFO] [stdout] 39 | fn is_valid_input(&self, input: &str) -> bool { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/tree/literal_command_node.rs:47:34 [INFO] [stdout] | [INFO] [stdout] 47 | fn get_relevant_nodes(&self, input: &str) -> Vec>> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> src/tree/literal_command_node.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | context: &mut crate::context::command_context::CommandContext, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `builder` [INFO] [stdout] --> src/tree/literal_command_node.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | builder: &mut crate::suggestion::suggestions_builder::SuggestionsBuilder, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_builder` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/tree/literal_command_node.rs:83:25 [INFO] [stdout] | [INFO] [stdout] 83 | fn get_child(&self, name: &str) -> Option>> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `child` [INFO] [stdout] --> src/tree/literal_command_node.rs:87:29 [INFO] [stdout] | [INFO] [stdout] 87 | fn add_child(&mut self, child: Box>) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_child` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reader` [INFO] [stdout] --> src/tree/literal_command_node.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | reader: &mut crate::string_reader::StringReader, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> src/tree/literal_command_node.rs:102:9 [INFO] [stdout] | [INFO] [stdout] 102 | context: &mut crate::context::command_context::CommandContext, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `source` [INFO] [stdout] --> src/tree/root_command_node.rs:18:23 [INFO] [stdout] | [INFO] [stdout] 18 | fn can_use(&self, source: &S) -> bool { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `finder` [INFO] [stdout] --> src/tree/root_command_node.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | finder: &mut Box>, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_finder` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/tree/root_command_node.rs:29:30 [INFO] [stdout] | [INFO] [stdout] 29 | fn is_valid_input(&self, input: &str) -> bool { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/tree/root_command_node.rs:37:34 [INFO] [stdout] | [INFO] [stdout] 37 | fn get_relevant_nodes(&self, input: &str) -> Vec>> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> src/tree/root_command_node.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | context: &mut crate::context::command_context::CommandContext, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `builder` [INFO] [stdout] --> src/tree/root_command_node.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | builder: &mut crate::suggestion::suggestions_builder::SuggestionsBuilder, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_builder` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/tree/root_command_node.rs:73:25 [INFO] [stdout] | [INFO] [stdout] 73 | fn get_child(&self, name: &str) -> Option>> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `child` [INFO] [stdout] --> src/tree/root_command_node.rs:77:29 [INFO] [stdout] | [INFO] [stdout] 77 | fn add_child(&mut self, child: Box>) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_child` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reader` [INFO] [stdout] --> src/tree/root_command_node.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 93 | reader: &mut crate::string_reader::StringReader, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> src/tree/root_command_node.rs:94:9 [INFO] [stdout] | [INFO] [stdout] 94 | context: &mut crate::context::command_context::CommandContext, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `literal`, `modifier`, and `forks` are never read [INFO] [stdout] --> src/builder/literal_argument_builder.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct LiteralArgumentBuilder { [INFO] [stdout] | ---------------------- fields in this struct [INFO] [stdout] 11 | pub(crate) literal: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 16 | pub(crate) modifier: Option>>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 17 | pub(crate) forks: bool, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARGUMENT_SEPARATOR` is never used [INFO] [stdout] --> src/command_dispatcher.rs:3:7 [INFO] [stdout] | [INFO] [stdout] 3 | const ARGUMENT_SEPARATOR: &str = " "; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USAGE_OPTIONAL_OPEN` is never used [INFO] [stdout] --> src/command_dispatcher.rs:4:7 [INFO] [stdout] | [INFO] [stdout] 4 | const USAGE_OPTIONAL_OPEN: &str = "["; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USAGE_OPTIONAL_CLOSE` is never used [INFO] [stdout] --> src/command_dispatcher.rs:5:7 [INFO] [stdout] | [INFO] [stdout] 5 | const USAGE_OPTIONAL_CLOSE: &str = "]"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USAGE_REQUIRED_OPEN` is never used [INFO] [stdout] --> src/command_dispatcher.rs:6:7 [INFO] [stdout] | [INFO] [stdout] 6 | const USAGE_REQUIRED_OPEN: &str = "<"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USAGE_REQUIRED_CLOSE` is never used [INFO] [stdout] --> src/command_dispatcher.rs:7:7 [INFO] [stdout] | [INFO] [stdout] 7 | const USAGE_REQUIRED_CLOSE: &str = ">"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USAGE_OR` is never used [INFO] [stdout] --> src/command_dispatcher.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const USAGE_OR: &str = "|"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `source`, `input`, `command`, `arguments`, `range`, and `forks` are never read [INFO] [stdout] --> src/context/command_context.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct CommandContext { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 23 | source: S, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 24 | input: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 25 | command: Box>, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 26 | arguments: HashMap>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | range: StringRange, [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | forks: bool, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: struct `ArgumentCommandNode` is never constructed [INFO] [stdout] --> src/tree/argument_command_node.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct ArgumentCommandNode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it [INFO] [stdout] = note: `#[deny(unused_unconstructable_pub_structs)]` (part of `#[deny(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/tree/argument_command_node.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct ArgumentCommandNode { [INFO] [stdout] | ------------------- fields in this struct [INFO] [stdout] 11 | children: LinkedHashMap>>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 12 | literals: LinkedHashMap>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 13 | arguments: LinkedHashMap>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 14 | requirement: Option bool>>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 15 | redirect: Option>>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 16 | modifier: Option>>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 17 | forks: bool, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 18 | command: Box>, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 19 | [INFO] [stdout] 20 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 21 | argument_type: Box>, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 22 | custom_suggestions: Box>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `literal` and `literal_lower_case` are never read [INFO] [stdout] --> src/tree/literal_command_node.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct LiteralCommandNode { [INFO] [stdout] | ------------------ fields in this struct [INFO] [stdout] 8 | literal: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 9 | literal_lower_case: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/string_reader.rs:13:24 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn new(string: &str) -> StringReader { [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 13 | pub fn new(string: &str) -> StringReader<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `any::Any` [INFO] [stdout] --> src/context/command_context.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{any::Any, collections::HashMap}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `brigadier` (lib) due to 1 previous error; 36 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: unused import: `linked_hash_map::LinkedHashMap` [INFO] [stdout] --> src/tree/literal_command_node.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use linked_hash_map::LinkedHashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `source` [INFO] [stdout] --> src/command_dispatcher.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | source: S, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `command` [INFO] [stdout] --> src/tree/literal_command_node.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | command: Option>>, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_command` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `requirement` [INFO] [stdout] --> src/tree/literal_command_node.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | requirement: Box bool>, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_requirement` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `source` [INFO] [stdout] --> src/tree/literal_command_node.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | fn can_use(&self, source: &S) -> bool { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `finder` [INFO] [stdout] --> src/tree/literal_command_node.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | finder: &mut Box>, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_finder` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/tree/literal_command_node.rs:39:30 [INFO] [stdout] | [INFO] [stdout] 39 | fn is_valid_input(&self, input: &str) -> bool { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/tree/literal_command_node.rs:47:34 [INFO] [stdout] | [INFO] [stdout] 47 | fn get_relevant_nodes(&self, input: &str) -> Vec>> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> src/tree/literal_command_node.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | context: &mut crate::context::command_context::CommandContext, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `builder` [INFO] [stdout] --> src/tree/literal_command_node.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | builder: &mut crate::suggestion::suggestions_builder::SuggestionsBuilder, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_builder` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/tree/literal_command_node.rs:83:25 [INFO] [stdout] | [INFO] [stdout] 83 | fn get_child(&self, name: &str) -> Option>> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `child` [INFO] [stdout] --> src/tree/literal_command_node.rs:87:29 [INFO] [stdout] | [INFO] [stdout] 87 | fn add_child(&mut self, child: Box>) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_child` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reader` [INFO] [stdout] --> src/tree/literal_command_node.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | reader: &mut crate::string_reader::StringReader, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> src/tree/literal_command_node.rs:102:9 [INFO] [stdout] | [INFO] [stdout] 102 | context: &mut crate::context::command_context::CommandContext, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `source` [INFO] [stdout] --> src/tree/root_command_node.rs:18:23 [INFO] [stdout] | [INFO] [stdout] 18 | fn can_use(&self, source: &S) -> bool { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `finder` [INFO] [stdout] --> src/tree/root_command_node.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | finder: &mut Box>, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_finder` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/tree/root_command_node.rs:29:30 [INFO] [stdout] | [INFO] [stdout] 29 | fn is_valid_input(&self, input: &str) -> bool { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/tree/root_command_node.rs:37:34 [INFO] [stdout] | [INFO] [stdout] 37 | fn get_relevant_nodes(&self, input: &str) -> Vec>> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> src/tree/root_command_node.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | context: &mut crate::context::command_context::CommandContext, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `builder` [INFO] [stdout] --> src/tree/root_command_node.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | builder: &mut crate::suggestion::suggestions_builder::SuggestionsBuilder, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_builder` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/tree/root_command_node.rs:73:25 [INFO] [stdout] | [INFO] [stdout] 73 | fn get_child(&self, name: &str) -> Option>> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `child` [INFO] [stdout] --> src/tree/root_command_node.rs:77:29 [INFO] [stdout] | [INFO] [stdout] 77 | fn add_child(&mut self, child: Box>) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_child` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reader` [INFO] [stdout] --> src/tree/root_command_node.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 93 | reader: &mut crate::string_reader::StringReader, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> src/tree/root_command_node.rs:94:9 [INFO] [stdout] | [INFO] [stdout] 94 | context: &mut crate::context::command_context::CommandContext, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `literal`, `modifier`, and `forks` are never read [INFO] [stdout] --> src/builder/literal_argument_builder.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct LiteralArgumentBuilder { [INFO] [stdout] | ---------------------- fields in this struct [INFO] [stdout] 11 | pub(crate) literal: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 16 | pub(crate) modifier: Option>>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 17 | pub(crate) forks: bool, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARGUMENT_SEPARATOR` is never used [INFO] [stdout] --> src/command_dispatcher.rs:3:7 [INFO] [stdout] | [INFO] [stdout] 3 | const ARGUMENT_SEPARATOR: &str = " "; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USAGE_OPTIONAL_OPEN` is never used [INFO] [stdout] --> src/command_dispatcher.rs:4:7 [INFO] [stdout] | [INFO] [stdout] 4 | const USAGE_OPTIONAL_OPEN: &str = "["; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USAGE_OPTIONAL_CLOSE` is never used [INFO] [stdout] --> src/command_dispatcher.rs:5:7 [INFO] [stdout] | [INFO] [stdout] 5 | const USAGE_OPTIONAL_CLOSE: &str = "]"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USAGE_REQUIRED_OPEN` is never used [INFO] [stdout] --> src/command_dispatcher.rs:6:7 [INFO] [stdout] | [INFO] [stdout] 6 | const USAGE_REQUIRED_OPEN: &str = "<"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USAGE_REQUIRED_CLOSE` is never used [INFO] [stdout] --> src/command_dispatcher.rs:7:7 [INFO] [stdout] | [INFO] [stdout] 7 | const USAGE_REQUIRED_CLOSE: &str = ">"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USAGE_OR` is never used [INFO] [stdout] --> src/command_dispatcher.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const USAGE_OR: &str = "|"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `source`, `input`, `command`, `arguments`, `range`, and `forks` are never read [INFO] [stdout] --> src/context/command_context.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct CommandContext { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 23 | source: S, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 24 | input: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 25 | command: Box>, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 26 | arguments: HashMap>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | range: StringRange, [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | forks: bool, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: struct `ArgumentCommandNode` is never constructed [INFO] [stdout] --> src/tree/argument_command_node.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct ArgumentCommandNode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it [INFO] [stdout] = note: `#[deny(unused_unconstructable_pub_structs)]` (part of `#[deny(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/tree/argument_command_node.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct ArgumentCommandNode { [INFO] [stdout] | ------------------- fields in this struct [INFO] [stdout] 11 | children: LinkedHashMap>>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 12 | literals: LinkedHashMap>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 13 | arguments: LinkedHashMap>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 14 | requirement: Option bool>>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 15 | redirect: Option>>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 16 | modifier: Option>>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 17 | forks: bool, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 18 | command: Box>, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 19 | [INFO] [stdout] 20 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 21 | argument_type: Box>, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 22 | custom_suggestions: Box>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `literal` and `literal_lower_case` are never read [INFO] [stdout] --> src/tree/literal_command_node.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct LiteralCommandNode { [INFO] [stdout] | ------------------ fields in this struct [INFO] [stdout] 8 | literal: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 9 | literal_lower_case: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/string_reader.rs:13:24 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn new(string: &str) -> StringReader { [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 13 | pub fn new(string: &str) -> StringReader<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `brigadier` (lib test) due to 1 previous error; 36 warnings emitted [INFO] running `Command { std: "docker" "inspect" "e92bfd254d1e2a19997bc44344652c6fc185593d8f83fcc4e5a8fc9536b94096", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e92bfd254d1e2a19997bc44344652c6fc185593d8f83fcc4e5a8fc9536b94096", kill_on_drop: false }` [INFO] [stdout] e92bfd254d1e2a19997bc44344652c6fc185593d8f83fcc4e5a8fc9536b94096