[INFO] cloning repository https://github.com/owen-d/logqlsp [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/owen-d/logqlsp" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fowen-d%2Flogqlsp", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fowen-d%2Flogqlsp'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] dc70a2897b788b41b385f9a984ac8360abf422df [INFO] testing owen-d/logqlsp against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_getrandom_patch_1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fowen-d%2Flogqlsp" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/owen-d/logqlsp [INFO] finished tweaking git repo https://github.com/owen-d/logqlsp [INFO] tweaked toml for git repo https://github.com/owen-d/logqlsp written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/owen-d/logqlsp on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/owen-d/logqlsp 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" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: unused manifest key: debug [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded brownstone v3.0.0 [INFO] [stderr] Downloaded dashmap v5.1.0 [INFO] [stderr] Downloaded lsp-types v0.93.0 [INFO] [stderr] Downloaded nom-supreme v0.8.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] cf7389689465fc7ee725bdbfe78c60936629926afeddf5b5e6fd9d782d4ec676 [INFO] running `Command { std: "docker" "start" "-a" "cf7389689465fc7ee725bdbfe78c60936629926afeddf5b5e6fd9d782d4ec676", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "cf7389689465fc7ee725bdbfe78c60936629926afeddf5b5e6fd9d782d4ec676", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cf7389689465fc7ee725bdbfe78c60936629926afeddf5b5e6fd9d782d4ec676", kill_on_drop: false }` [INFO] [stdout] cf7389689465fc7ee725bdbfe78c60936629926afeddf5b5e6fd9d782d4ec676 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] b48b4b7ef9e2c30f55867cb230c1a2c705d27ea4a9fa99d91dc4bb46a5608a78 [INFO] running `Command { std: "docker" "start" "-a" "b48b4b7ef9e2c30f55867cb230c1a2c705d27ea4a9fa99d91dc4bb46a5608a78", kill_on_drop: false }` [INFO] [stderr] warning: unused manifest key: debug [INFO] [stderr] Compiling syn v1.0.86 [INFO] [stderr] Compiling memchr v2.4.1 [INFO] [stderr] Compiling libc v0.2.119 [INFO] [stderr] Compiling parking_lot_core v0.9.1 [INFO] [stderr] Compiling lock_api v0.4.6 [INFO] [stderr] Compiling tinyvec v1.5.1 [INFO] [stderr] Compiling quote v1.0.15 [INFO] [stderr] Compiling futures-channel v0.3.21 [INFO] [stderr] Compiling serde_json v1.0.79 [INFO] [stderr] Compiling httparse v1.6.0 [INFO] [stderr] Compiling async-trait v0.1.52 [INFO] [stderr] Compiling ryu v1.0.9 [INFO] [stderr] Compiling itoa v1.0.1 [INFO] [stderr] Compiling bitmaps v2.1.0 [INFO] [stderr] Compiling im-rc v15.0.0 [INFO] [stderr] Compiling tower-layer v0.3.1 [INFO] [stderr] Compiling regex-syntax v0.6.25 [INFO] [stderr] Compiling rand_xoshiro v0.4.0 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling brownstone v3.0.0 [INFO] [stderr] Compiling joinery v2.1.0 [INFO] [stderr] Compiling bytecount v0.6.3 [INFO] [stderr] Compiling str_indices v0.4.1 [INFO] [stderr] Compiling indent_write v2.2.0 [INFO] [stderr] Compiling ropey v1.6.0 [INFO] [stderr] Compiling aho-corasick v0.7.18 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling sized-chunks v0.6.5 [INFO] [stderr] Compiling unicode-normalization v0.1.19 [INFO] [stderr] Compiling num_cpus v1.13.1 [INFO] [stderr] Compiling mio v0.8.0 [INFO] [stderr] Compiling signal-hook-registry v1.4.0 [INFO] [stderr] Compiling socket2 v0.4.4 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling parking_lot v0.12.0 [INFO] [stderr] Compiling dashmap v5.1.0 [INFO] [stderr] Compiling regex v1.5.5 [INFO] [stderr] Compiling idna v0.2.3 [INFO] [stderr] Compiling nom_locate v4.1.0 [INFO] [stderr] Compiling nom-supreme v0.8.0 [INFO] [stderr] Compiling env_logger v0.9.0 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling serde_derive v1.0.136 [INFO] [stderr] Compiling futures-macro v0.3.21 [INFO] [stderr] Compiling pin-project-internal v1.0.10 [INFO] [stderr] Compiling tokio-macros v1.7.0 [INFO] [stderr] Compiling serde_repr v0.1.7 [INFO] [stderr] Compiling auto_impl v0.5.0 [INFO] [stderr] Compiling tower-lsp-macros v0.6.0 [INFO] [stderr] Compiling tokio v1.17.0 [INFO] [stderr] Compiling futures-util v0.3.21 [INFO] [stderr] Compiling pin-project v1.0.10 [INFO] [stderr] Compiling serde v1.0.136 [INFO] [stderr] Compiling tower v0.4.12 [INFO] [stderr] Compiling futures v0.3.21 [INFO] [stderr] Compiling tokio-util v0.7.0 [INFO] [stderr] Compiling url v2.2.2 [INFO] [stderr] Compiling lsp-types v0.93.0 [INFO] [stderr] Compiling tower-lsp v0.17.0 [INFO] [stderr] Compiling logql-language-server v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `FromExternalError`, `InputIter`, and `InputLength` [INFO] [stdout] --> src/parser/errors.rs:35:24 [INFO] [stdout] | [INFO] [stdout] 35 | error::{ErrorKind, FromExternalError, ParseError}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 36 | InputIter, InputLength, Offset, [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json::to_string` [INFO] [stdout] --> src/parser/errors.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | use serde_json::to_string; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Display` [INFO] [stdout] --> src/parser/lexer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fmt::Display; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::Enumerate` [INFO] [stdout] --> src/parser/lexer.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::iter::Enumerate; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/parser/lexer.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Iter` [INFO] [stdout] --> src/parser/lexer.rs:5:24 [INFO] [stdout] | [INFO] [stdout] 5 | use std::slice::{self, Iter}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::vec` [INFO] [stdout] --> src/parser/lexer.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::vec; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom::error::VerboseError` [INFO] [stdout] --> src/parser/lexer.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use nom::error::VerboseError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `map` and `take_until` [INFO] [stdout] --> src/parser/lexer.rs:11:40 [INFO] [stdout] | [INFO] [stdout] 11 | bytes::complete::{escaped, is_not, take_until, take_while}, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 12 | character::complete::{multispace0, one_of}, [INFO] [stdout] 13 | combinator::{eof, map}, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom_locate::position` [INFO] [stdout] --> src/parser/lexer.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use nom_locate::position; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DidChangeWatchedFilesRegistrationOptions` [INFO] [stdout] --> src/parser/lexer.rs:23:28 [INFO] [stdout] | [INFO] [stdout] 23 | use tower_lsp::lsp_types::{DidChangeWatchedFilesRegistrationOptions, SemanticTokenType}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Spanned` [INFO] [stdout] --> src/parser/lexer.rs:25:47 [INFO] [stdout] | [INFO] [stdout] 25 | use super::utils::{spanned, RefSpanned, Span, Spanned}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CompareResult`, `Compare`, `ContextError`, `ErrorKind`, `Error`, `ParseError`, `VerboseError`, `bytes::complete::tag`, `make_error`, and `separated_pair` [INFO] [stdout] --> src/parser/parser.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | bytes::complete::tag, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 4 | combinator::{eof, map, opt, peek}, [INFO] [stdout] 5 | error::{context, make_error, ContextError, Error, ErrorKind, ParseError, VerboseError}, [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] 6 | multi::separated_list0, [INFO] [stdout] 7 | sequence::{delimited, separated_pair, terminated, Tuple}, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 8 | Compare, CompareResult, IResult, InputLength, InputTake, Parser, [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom_locate::position` [INFO] [stdout] --> src/parser/parser.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use nom_locate::position; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Tokenable` and `spanned` [INFO] [stdout] --> src/parser/parser.rs:15:50 [INFO] [stdout] | [INFO] [stdout] 15 | lexer::{Delimited, Head, Token, TokenStream, Tokenable}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 16 | pipeline::{parse_pipeline_expr, PipelineExpr}, [INFO] [stdout] 17 | utils::{spanned, RefSpanned, Span, Spanned}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ContextError`, `Finish`, `ParseError`, `VerboseError`, and `convert_error` [INFO] [stdout] --> src/parser/pipeline.rs:3:22 [INFO] [stdout] | [INFO] [stdout] 3 | error::{context, convert_error, ContextError, ParseError, VerboseError}, [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] 4 | multi::fold_many1, [INFO] [stdout] 5 | Finish, IResult, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom_supreme::tag::TagError` [INFO] [stdout] --> src/parser/pipeline.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use nom_supreme::tag::TagError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Token` [INFO] [stdout] --> src/parser/pipeline.rs:11:13 [INFO] [stdout] | [INFO] [stdout] 11 | lexer::{Token, TokenStream}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::fmt` [INFO] [stdout] --> src/parser/utils.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use core::fmt; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fmt::Display` [INFO] [stdout] --> src/parser/utils.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{fmt::Display, ops::Deref}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `error::ParseError` [INFO] [stdout] --> src/parser/utils.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | use nom::{error::ParseError, IResult, Parser, Slice}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LocatedSpan` [INFO] [stdout] --> src/parser/utils.rs:5:28 [INFO] [stdout] | [INFO] [stdout] 5 | use nom_locate::{position, LocatedSpan}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tower_lsp::lsp_types::CompletionItem` [INFO] [stdout] --> src/parser/utils.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use tower_lsp::lsp_types::CompletionItem; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::lexer::TokenStream` [INFO] [stdout] --> src/parser/utils.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use super::lexer::TokenStream; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/semantic_tokens.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::warn` [INFO] [stdout] --> src/semantic_tokens.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use log::warn; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Head`, `Offset`, `TokenStream`, and `parser::LogExpr` [INFO] [stdout] --> src/semantic_tokens.rs:9:13 [INFO] [stdout] | [INFO] [stdout] 9 | lexer::{Head, Token, TokenStream}, [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] 10 | parser::LogExpr, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | utils::{Offset, Spanned}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom::InputIter` [INFO] [stdout] --> src/semantic_tokens.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use nom::InputIter; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `InputTakeAtPosition` [INFO] [stdout] --> src/parser/lexer.rs:19:44 [INFO] [stdout] | [INFO] [stdout] 19 | use nom::{Compare, InputLength, InputTake, InputTakeAtPosition, Needed, Parser}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom_supreme::tag::TagError` [INFO] [stdout] --> src/parser/parser.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use nom_supreme::tag::TagError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser/errors.rs:165:42 [INFO] [stdout] | [INFO] [stdout] 165 | fn append(input: I, kind: ErrorKind, mut other: Self) -> Self { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_comment` is never used [INFO] [stdout] --> src/parser/parser.rs:201:25 [INFO] [stdout] | [INFO] [stdout] 201 | impl_token_type_parser!(parse_comment, "comment", Comment, String, |x| x); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `impl_token_type_parser` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_delimiter` is never used [INFO] [stdout] --> src/parser/parser.rs:205:5 [INFO] [stdout] | [INFO] [stdout] 205 | parse_delimiter, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `impl_token_type_parser` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser/lexer.rs:319:30 [INFO] [stdout] | [INFO] [stdout] 319 | fn string<'a, E>(input: Span<'a>) -> Result [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 319 | fn string<'a, E>(input: Span<'a>) -> Result<'a, E> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser/lexer.rs:326:44 [INFO] [stdout] | [INFO] [stdout] 326 | fn double_quoted_string<'a, E>(input: Span<'a>) -> Result [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 326 | fn double_quoted_string<'a, E>(input: Span<'a>) -> Result<'a, E> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser/lexer.rs:356:56 [INFO] [stdout] | [INFO] [stdout] 356 | fn raw_string<'a, E: ParseError>>(input: Span<'a>) -> Result [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 356 | fn raw_string<'a, E: ParseError>>(input: Span<'a>) -> Result<'a, E> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser/lexer.rs:370:50 [INFO] [stdout] | [INFO] [stdout] 370 | fn word<'a, E: ParseError>>(input: Span<'a>) -> Result { [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 370 | fn word<'a, E: ParseError>>(input: Span<'a>) -> Result<'a, E> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser/lexer.rs:375:31 [INFO] [stdout] | [INFO] [stdout] 375 | fn comment<'a, E>(input: Span<'a>) -> Result [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 375 | fn comment<'a, E>(input: Span<'a>) -> Result<'a, E> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser/parser.rs:46:41 [INFO] [stdout] | [INFO] [stdout] 46 | Spanned::from((selector.span.clone(), LogExpr { selector, pipeline })), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser/pipeline.rs:34:38 [INFO] [stdout] | [INFO] [stdout] 34 | Spanned::from((stages[0].span.clone(), PipelineExpr { stages })), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser/pipeline.rs:53:31 [INFO] [stdout] | [INFO] [stdout] 53 | Spanned::from((lf.span.clone(), PipelineStage::LineFilter(lf))), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser/pipeline.rs:71:40 [INFO] [stdout] | [INFO] [stdout] 71 | let lf = Spanned::from((filter.span.clone(), LineFilter { filter, s })); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::warn` [INFO] [stdout] --> src/main.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use log::warn; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `LogExpr` and `parse_log_expr` [INFO] [stdout] --> src/main.rs:7:52 [INFO] [stdout] | [INFO] [stdout] 7 | use logql_language_server::parser::parser::{parse, parse_log_expr, LogExpr}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Offset` [INFO] [stdout] --> src/main.rs:8:44 [INFO] [stdout] | [INFO] [stdout] 8 | use logql_language_server::parser::utils::{Offset, Span, Spanned}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `VerboseErrorKind`, `VerboseError`, and `convert_error` [INFO] [stdout] --> src/main.rs:10:18 [INFO] [stdout] | [INFO] [stdout] 10 | use nom::error::{convert_error, VerboseError, VerboseErrorKind}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ropey::Rope` [INFO] [stdout] --> src/main.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use ropey::Rope; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/main.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:78:61 [INFO] [stdout] | [INFO] [stdout] 78 | ... token_types: LEGEND_TYPE.clone().into(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `[SemanticTokenType]` does not implement `Clone`, so calling `clone` on `&[SemanticTokenType]` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 40.89s [INFO] running `Command { std: "docker" "inspect" "b48b4b7ef9e2c30f55867cb230c1a2c705d27ea4a9fa99d91dc4bb46a5608a78", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b48b4b7ef9e2c30f55867cb230c1a2c705d27ea4a9fa99d91dc4bb46a5608a78", kill_on_drop: false }` [INFO] [stdout] b48b4b7ef9e2c30f55867cb230c1a2c705d27ea4a9fa99d91dc4bb46a5608a78 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 036a051257bc9d78072d3536c5c0a6f7da5a0727463e1fb768db4f76e14cf96e [INFO] running `Command { std: "docker" "start" "-a" "036a051257bc9d78072d3536c5c0a6f7da5a0727463e1fb768db4f76e14cf96e", kill_on_drop: false }` [INFO] [stderr] warning: unused manifest key: debug [INFO] [stdout] warning: unused imports: `FromExternalError`, `InputIter`, and `InputLength` [INFO] [stdout] --> src/parser/errors.rs:35:24 [INFO] [stdout] | [INFO] [stdout] 35 | error::{ErrorKind, FromExternalError, ParseError}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 36 | InputIter, InputLength, Offset, [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json::to_string` [INFO] [stdout] --> src/parser/errors.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | use serde_json::to_string; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Display` [INFO] [stdout] --> src/parser/lexer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fmt::Display; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::Enumerate` [INFO] [stdout] --> src/parser/lexer.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::iter::Enumerate; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/parser/lexer.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Iter` [INFO] [stdout] --> src/parser/lexer.rs:5:24 [INFO] [stdout] | [INFO] [stdout] 5 | use std::slice::{self, Iter}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::vec` [INFO] [stdout] --> src/parser/lexer.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::vec; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom::error::VerboseError` [INFO] [stdout] --> src/parser/lexer.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use nom::error::VerboseError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `map` and `take_until` [INFO] [stdout] --> src/parser/lexer.rs:11:40 [INFO] [stdout] | [INFO] [stdout] 11 | bytes::complete::{escaped, is_not, take_until, take_while}, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 12 | character::complete::{multispace0, one_of}, [INFO] [stdout] 13 | combinator::{eof, map}, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom_locate::position` [INFO] [stdout] --> src/parser/lexer.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use nom_locate::position; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DidChangeWatchedFilesRegistrationOptions` [INFO] [stdout] --> src/parser/lexer.rs:23:28 [INFO] [stdout] | [INFO] [stdout] 23 | use tower_lsp::lsp_types::{DidChangeWatchedFilesRegistrationOptions, SemanticTokenType}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Spanned` [INFO] [stdout] --> src/parser/lexer.rs:25:47 [INFO] [stdout] | [INFO] [stdout] 25 | use super::utils::{spanned, RefSpanned, Span, Spanned}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CompareResult`, `Compare`, `ContextError`, `ErrorKind`, `Error`, `ParseError`, `VerboseError`, `bytes::complete::tag`, `make_error`, and `separated_pair` [INFO] [stdout] --> src/parser/parser.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | bytes::complete::tag, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 4 | combinator::{eof, map, opt, peek}, [INFO] [stdout] 5 | error::{context, make_error, ContextError, Error, ErrorKind, ParseError, VerboseError}, [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] 6 | multi::separated_list0, [INFO] [stdout] 7 | sequence::{delimited, separated_pair, terminated, Tuple}, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 8 | Compare, CompareResult, IResult, InputLength, InputTake, Parser, [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom_locate::position` [INFO] [stdout] --> src/parser/parser.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use nom_locate::position; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Tokenable` and `spanned` [INFO] [stdout] --> src/parser/parser.rs:15:50 [INFO] [stdout] | [INFO] [stdout] 15 | lexer::{Delimited, Head, Token, TokenStream, Tokenable}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 16 | pipeline::{parse_pipeline_expr, PipelineExpr}, [INFO] [stdout] 17 | utils::{spanned, RefSpanned, Span, Spanned}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ContextError`, `Finish`, `ParseError`, `VerboseError`, and `convert_error` [INFO] [stdout] --> src/parser/pipeline.rs:3:22 [INFO] [stdout] | [INFO] [stdout] 3 | error::{context, convert_error, ContextError, ParseError, VerboseError}, [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] 4 | multi::fold_many1, [INFO] [stdout] 5 | Finish, IResult, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom_supreme::tag::TagError` [INFO] [stdout] --> src/parser/pipeline.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use nom_supreme::tag::TagError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Token` [INFO] [stdout] --> src/parser/pipeline.rs:11:13 [INFO] [stdout] | [INFO] [stdout] 11 | lexer::{Token, TokenStream}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::fmt` [INFO] [stdout] --> src/parser/utils.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use core::fmt; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fmt::Display` [INFO] [stdout] --> src/parser/utils.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{fmt::Display, ops::Deref}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `error::ParseError` [INFO] [stdout] --> src/parser/utils.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | use nom::{error::ParseError, IResult, Parser, Slice}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LocatedSpan` [INFO] [stdout] --> src/parser/utils.rs:5:28 [INFO] [stdout] | [INFO] [stdout] 5 | use nom_locate::{position, LocatedSpan}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tower_lsp::lsp_types::CompletionItem` [INFO] [stdout] --> src/parser/utils.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use tower_lsp::lsp_types::CompletionItem; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::lexer::TokenStream` [INFO] [stdout] --> src/parser/utils.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use super::lexer::TokenStream; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/semantic_tokens.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::warn` [INFO] [stdout] --> src/semantic_tokens.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use log::warn; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Head`, `Offset`, `TokenStream`, and `parser::LogExpr` [INFO] [stdout] --> src/semantic_tokens.rs:9:13 [INFO] [stdout] | [INFO] [stdout] 9 | lexer::{Head, Token, TokenStream}, [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] 10 | parser::LogExpr, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | utils::{Offset, Spanned}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom::InputIter` [INFO] [stdout] --> src/semantic_tokens.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use nom::InputIter; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `InputTakeAtPosition` [INFO] [stdout] --> src/parser/lexer.rs:19:44 [INFO] [stdout] | [INFO] [stdout] 19 | use nom::{Compare, InputLength, InputTake, InputTakeAtPosition, Needed, Parser}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom_supreme::tag::TagError` [INFO] [stdout] --> src/parser/parser.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use nom_supreme::tag::TagError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser/errors.rs:165:42 [INFO] [stdout] | [INFO] [stdout] 165 | fn append(input: I, kind: ErrorKind, mut other: Self) -> Self { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_comment` is never used [INFO] [stdout] --> src/parser/parser.rs:201:25 [INFO] [stdout] | [INFO] [stdout] 201 | impl_token_type_parser!(parse_comment, "comment", Comment, String, |x| x); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `impl_token_type_parser` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_delimiter` is never used [INFO] [stdout] --> src/parser/parser.rs:205:5 [INFO] [stdout] | [INFO] [stdout] 205 | parse_delimiter, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `impl_token_type_parser` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling logql-language-server v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser/lexer.rs:319:30 [INFO] [stdout] | [INFO] [stdout] 319 | fn string<'a, E>(input: Span<'a>) -> Result [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 319 | fn string<'a, E>(input: Span<'a>) -> Result<'a, E> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser/lexer.rs:326:44 [INFO] [stdout] | [INFO] [stdout] 326 | fn double_quoted_string<'a, E>(input: Span<'a>) -> Result [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 326 | fn double_quoted_string<'a, E>(input: Span<'a>) -> Result<'a, E> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser/lexer.rs:356:56 [INFO] [stdout] | [INFO] [stdout] 356 | fn raw_string<'a, E: ParseError>>(input: Span<'a>) -> Result [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 356 | fn raw_string<'a, E: ParseError>>(input: Span<'a>) -> Result<'a, E> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser/lexer.rs:370:50 [INFO] [stdout] | [INFO] [stdout] 370 | fn word<'a, E: ParseError>>(input: Span<'a>) -> Result { [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 370 | fn word<'a, E: ParseError>>(input: Span<'a>) -> Result<'a, E> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser/lexer.rs:375:31 [INFO] [stdout] | [INFO] [stdout] 375 | fn comment<'a, E>(input: Span<'a>) -> Result [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 375 | fn comment<'a, E>(input: Span<'a>) -> Result<'a, E> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser/parser.rs:46:41 [INFO] [stdout] | [INFO] [stdout] 46 | Spanned::from((selector.span.clone(), LogExpr { selector, pipeline })), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser/pipeline.rs:34:38 [INFO] [stdout] | [INFO] [stdout] 34 | Spanned::from((stages[0].span.clone(), PipelineExpr { stages })), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser/pipeline.rs:53:31 [INFO] [stdout] | [INFO] [stdout] 53 | Spanned::from((lf.span.clone(), PipelineStage::LineFilter(lf))), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser/pipeline.rs:71:40 [INFO] [stdout] | [INFO] [stdout] 71 | let lf = Spanned::from((filter.span.clone(), LineFilter { filter, s })); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::warn` [INFO] [stdout] --> src/main.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use log::warn; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `LogExpr` and `parse_log_expr` [INFO] [stdout] --> src/main.rs:7:52 [INFO] [stdout] | [INFO] [stdout] 7 | use logql_language_server::parser::parser::{parse, parse_log_expr, LogExpr}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Offset` [INFO] [stdout] --> src/main.rs:8:44 [INFO] [stdout] | [INFO] [stdout] 8 | use logql_language_server::parser::utils::{Offset, Span, Spanned}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `VerboseErrorKind`, `VerboseError`, and `convert_error` [INFO] [stdout] --> src/main.rs:10:18 [INFO] [stdout] | [INFO] [stdout] 10 | use nom::error::{convert_error, VerboseError, VerboseErrorKind}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ropey::Rope` [INFO] [stdout] --> src/main.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use ropey::Rope; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/main.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FromExternalError`, `InputIter`, and `InputLength` [INFO] [stdout] --> src/parser/errors.rs:35:24 [INFO] [stdout] | [INFO] [stdout] 35 | error::{ErrorKind, FromExternalError, ParseError}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 36 | InputIter, InputLength, Offset, [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json::to_string` [INFO] [stdout] --> src/parser/errors.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | use serde_json::to_string; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Display` [INFO] [stdout] --> src/parser/lexer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fmt::Display; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::Enumerate` [INFO] [stdout] --> src/parser/lexer.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::iter::Enumerate; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/parser/lexer.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Iter` [INFO] [stdout] --> src/parser/lexer.rs:5:24 [INFO] [stdout] | [INFO] [stdout] 5 | use std::slice::{self, Iter}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `map` and `take_until` [INFO] [stdout] --> src/parser/lexer.rs:11:40 [INFO] [stdout] | [INFO] [stdout] 11 | bytes::complete::{escaped, is_not, take_until, take_while}, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 12 | character::complete::{multispace0, one_of}, [INFO] [stdout] 13 | combinator::{eof, map}, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom_locate::position` [INFO] [stdout] --> src/parser/lexer.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use nom_locate::position; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DidChangeWatchedFilesRegistrationOptions` [INFO] [stdout] --> src/parser/lexer.rs:23:28 [INFO] [stdout] | [INFO] [stdout] 23 | use tower_lsp::lsp_types::{DidChangeWatchedFilesRegistrationOptions, SemanticTokenType}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Spanned` [INFO] [stdout] --> src/parser/lexer.rs:25:47 [INFO] [stdout] | [INFO] [stdout] 25 | use super::utils::{spanned, RefSpanned, Span, Spanned}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CompareResult`, `Compare`, `ContextError`, `ErrorKind`, `Error`, `ParseError`, `bytes::complete::tag`, `make_error`, and `separated_pair` [INFO] [stdout] --> src/parser/parser.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | bytes::complete::tag, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 4 | combinator::{eof, map, opt, peek}, [INFO] [stdout] 5 | error::{context, make_error, ContextError, Error, ErrorKind, ParseError, VerboseError}, [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] 6 | multi::separated_list0, [INFO] [stdout] 7 | sequence::{delimited, separated_pair, terminated, Tuple}, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 8 | Compare, CompareResult, IResult, InputLength, InputTake, Parser, [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom_locate::position` [INFO] [stdout] --> src/parser/parser.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use nom_locate::position; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Tokenable` and `spanned` [INFO] [stdout] --> src/parser/parser.rs:15:50 [INFO] [stdout] | [INFO] [stdout] 15 | lexer::{Delimited, Head, Token, TokenStream, Tokenable}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 16 | pipeline::{parse_pipeline_expr, PipelineExpr}, [INFO] [stdout] 17 | utils::{spanned, RefSpanned, Span, Spanned}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ContextError`, `ParseError`, and `convert_error` [INFO] [stdout] --> src/parser/pipeline.rs:3:22 [INFO] [stdout] | [INFO] [stdout] 3 | error::{context, convert_error, ContextError, ParseError, VerboseError}, [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom_supreme::tag::TagError` [INFO] [stdout] --> src/parser/pipeline.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use nom_supreme::tag::TagError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Token` [INFO] [stdout] --> src/parser/pipeline.rs:11:13 [INFO] [stdout] | [INFO] [stdout] 11 | lexer::{Token, TokenStream}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::fmt` [INFO] [stdout] --> src/parser/utils.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use core::fmt; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fmt::Display` [INFO] [stdout] --> src/parser/utils.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{fmt::Display, ops::Deref}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `error::ParseError` [INFO] [stdout] --> src/parser/utils.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | use nom::{error::ParseError, IResult, Parser, Slice}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LocatedSpan` [INFO] [stdout] --> src/parser/utils.rs:5:28 [INFO] [stdout] | [INFO] [stdout] 5 | use nom_locate::{position, LocatedSpan}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tower_lsp::lsp_types::CompletionItem` [INFO] [stdout] --> src/parser/utils.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use tower_lsp::lsp_types::CompletionItem; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::lexer::TokenStream` [INFO] [stdout] --> src/parser/utils.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use super::lexer::TokenStream; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/semantic_tokens.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::warn` [INFO] [stdout] --> src/semantic_tokens.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use log::warn; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Head`, `Offset`, `TokenStream`, and `parser::LogExpr` [INFO] [stdout] --> src/semantic_tokens.rs:9:13 [INFO] [stdout] | [INFO] [stdout] 9 | lexer::{Head, Token, TokenStream}, [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] 10 | parser::LogExpr, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | utils::{Offset, Spanned}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:78:61 [INFO] [stdout] | [INFO] [stdout] 78 | ... token_types: LEGEND_TYPE.clone().into(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `[SemanticTokenType]` does not implement `Clone`, so calling `clone` on `&[SemanticTokenType]` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom::InputIter` [INFO] [stdout] --> src/semantic_tokens.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use nom::InputIter; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nom_supreme::tag::TagError` [INFO] [stdout] --> src/parser/parser.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use nom_supreme::tag::TagError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `InputTakeAtPosition` [INFO] [stdout] --> src/parser/lexer.rs:19:44 [INFO] [stdout] | [INFO] [stdout] 19 | use nom::{Compare, InputLength, InputTake, InputTakeAtPosition, Needed, Parser}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser/errors.rs:165:42 [INFO] [stdout] | [INFO] [stdout] 165 | fn append(input: I, kind: ErrorKind, mut other: Self) -> Self { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_comment` is never used [INFO] [stdout] --> src/parser/parser.rs:201:25 [INFO] [stdout] | [INFO] [stdout] 201 | impl_token_type_parser!(parse_comment, "comment", Comment, String, |x| x); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `impl_token_type_parser` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_delimiter` is never used [INFO] [stdout] --> src/parser/parser.rs:205:5 [INFO] [stdout] | [INFO] [stdout] 205 | parse_delimiter, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `impl_token_type_parser` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser/lexer.rs:319:30 [INFO] [stdout] | [INFO] [stdout] 319 | fn string<'a, E>(input: Span<'a>) -> Result [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 319 | fn string<'a, E>(input: Span<'a>) -> Result<'a, E> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser/lexer.rs:326:44 [INFO] [stdout] | [INFO] [stdout] 326 | fn double_quoted_string<'a, E>(input: Span<'a>) -> Result [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 326 | fn double_quoted_string<'a, E>(input: Span<'a>) -> Result<'a, E> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser/lexer.rs:356:56 [INFO] [stdout] | [INFO] [stdout] 356 | fn raw_string<'a, E: ParseError>>(input: Span<'a>) -> Result [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 356 | fn raw_string<'a, E: ParseError>>(input: Span<'a>) -> Result<'a, E> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser/lexer.rs:370:50 [INFO] [stdout] | [INFO] [stdout] 370 | fn word<'a, E: ParseError>>(input: Span<'a>) -> Result { [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 370 | fn word<'a, E: ParseError>>(input: Span<'a>) -> Result<'a, E> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser/lexer.rs:375:31 [INFO] [stdout] | [INFO] [stdout] 375 | fn comment<'a, E>(input: Span<'a>) -> Result [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 375 | fn comment<'a, E>(input: Span<'a>) -> Result<'a, E> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser/parser.rs:46:41 [INFO] [stdout] | [INFO] [stdout] 46 | Spanned::from((selector.span.clone(), LogExpr { selector, pipeline })), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser/pipeline.rs:34:38 [INFO] [stdout] | [INFO] [stdout] 34 | Spanned::from((stages[0].span.clone(), PipelineExpr { stages })), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser/pipeline.rs:53:31 [INFO] [stdout] | [INFO] [stdout] 53 | Spanned::from((lf.span.clone(), PipelineStage::LineFilter(lf))), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser/pipeline.rs:71:40 [INFO] [stdout] | [INFO] [stdout] 71 | let lf = Spanned::from((filter.span.clone(), LineFilter { filter, s })); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.84s [INFO] running `Command { std: "docker" "inspect" "036a051257bc9d78072d3536c5c0a6f7da5a0727463e1fb768db4f76e14cf96e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "036a051257bc9d78072d3536c5c0a6f7da5a0727463e1fb768db4f76e14cf96e", kill_on_drop: false }` [INFO] [stdout] 036a051257bc9d78072d3536c5c0a6f7da5a0727463e1fb768db4f76e14cf96e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 9d5176b575d3722013b53da442f09ac85a4efbae974c929c63cb679c815e4ca9 [INFO] running `Command { std: "docker" "start" "-a" "9d5176b575d3722013b53da442f09ac85a4efbae974c929c63cb679c815e4ca9", kill_on_drop: false }` [INFO] [stderr] warning: unused manifest key: debug [INFO] [stderr] warning: unused imports: `FromExternalError`, `InputIter`, and `InputLength` [INFO] [stderr] --> src/parser/errors.rs:35:24 [INFO] [stderr] | [INFO] [stderr] 35 | error::{ErrorKind, FromExternalError, ParseError}, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] 36 | InputIter, InputLength, Offset, [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde_json::to_string` [INFO] [stderr] --> src/parser/errors.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | use serde_json::to_string; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fmt::Display` [INFO] [stderr] --> src/parser/lexer.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::fmt::Display; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::Enumerate` [INFO] [stderr] --> src/parser/lexer.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::iter::Enumerate; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Deref` [INFO] [stderr] --> src/parser/lexer.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::ops::Deref; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Iter` [INFO] [stderr] --> src/parser/lexer.rs:5:24 [INFO] [stderr] | [INFO] [stderr] 5 | use std::slice::{self, Iter}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::vec` [INFO] [stderr] --> src/parser/lexer.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::vec; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `nom::error::VerboseError` [INFO] [stderr] --> src/parser/lexer.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use nom::error::VerboseError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `map` and `take_until` [INFO] [stderr] --> src/parser/lexer.rs:11:40 [INFO] [stderr] | [INFO] [stderr] 11 | bytes::complete::{escaped, is_not, take_until, take_while}, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 12 | character::complete::{multispace0, one_of}, [INFO] [stderr] 13 | combinator::{eof, map}, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `nom_locate::position` [INFO] [stderr] --> src/parser/lexer.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | use nom_locate::position; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `DidChangeWatchedFilesRegistrationOptions` [INFO] [stderr] --> src/parser/lexer.rs:23:28 [INFO] [stderr] | [INFO] [stderr] 23 | use tower_lsp::lsp_types::{DidChangeWatchedFilesRegistrationOptions, SemanticTokenType}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Spanned` [INFO] [stderr] --> src/parser/lexer.rs:25:47 [INFO] [stderr] | [INFO] [stderr] 25 | use super::utils::{spanned, RefSpanned, Span, Spanned}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `CompareResult`, `Compare`, `ContextError`, `ErrorKind`, `Error`, `ParseError`, `VerboseError`, `bytes::complete::tag`, `make_error`, and `separated_pair` [INFO] [stderr] --> src/parser/parser.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | bytes::complete::tag, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 4 | combinator::{eof, map, opt, peek}, [INFO] [stderr] 5 | error::{context, make_error, ContextError, Error, ErrorKind, ParseError, VerboseError}, [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] 6 | multi::separated_list0, [INFO] [stderr] 7 | sequence::{delimited, separated_pair, terminated, Tuple}, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 8 | Compare, CompareResult, IResult, InputLength, InputTake, Parser, [INFO] [stderr] | ^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `nom_locate::position` [INFO] [stderr] --> src/parser/parser.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use nom_locate::position; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Tokenable` and `spanned` [INFO] [stderr] --> src/parser/parser.rs:15:50 [INFO] [stderr] | [INFO] [stderr] 15 | lexer::{Delimited, Head, Token, TokenStream, Tokenable}, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 16 | pipeline::{parse_pipeline_expr, PipelineExpr}, [INFO] [stderr] 17 | utils::{spanned, RefSpanned, Span, Spanned}, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ContextError`, `Finish`, `ParseError`, `VerboseError`, and `convert_error` [INFO] [stderr] --> src/parser/pipeline.rs:3:22 [INFO] [stderr] | [INFO] [stderr] 3 | error::{context, convert_error, ContextError, ParseError, VerboseError}, [INFO] [stderr] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] 4 | multi::fold_many1, [INFO] [stderr] 5 | Finish, IResult, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `nom_supreme::tag::TagError` [INFO] [stderr] --> src/parser/pipeline.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use nom_supreme::tag::TagError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Token` [INFO] [stderr] --> src/parser/pipeline.rs:11:13 [INFO] [stderr] | [INFO] [stderr] 11 | lexer::{Token, TokenStream}, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `core::fmt` [INFO] [stderr] --> src/parser/utils.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use core::fmt; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `fmt::Display` [INFO] [stderr] --> src/parser/utils.rs:2:11 [INFO] [stderr] | [INFO] [stderr] 2 | use std::{fmt::Display, ops::Deref}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `error::ParseError` [INFO] [stderr] --> src/parser/utils.rs:4:11 [INFO] [stderr] | [INFO] [stderr] 4 | use nom::{error::ParseError, IResult, Parser, Slice}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `LocatedSpan` [INFO] [stderr] --> src/parser/utils.rs:5:28 [INFO] [stderr] | [INFO] [stderr] 5 | use nom_locate::{position, LocatedSpan}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tower_lsp::lsp_types::CompletionItem` [INFO] [stderr] --> src/parser/utils.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use tower_lsp::lsp_types::CompletionItem; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::lexer::TokenStream` [INFO] [stderr] --> src/parser/utils.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use super::lexer::TokenStream; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/semantic_tokens.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `log::warn` [INFO] [stderr] --> src/semantic_tokens.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use log::warn; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Head`, `Offset`, `TokenStream`, and `parser::LogExpr` [INFO] [stderr] --> src/semantic_tokens.rs:9:13 [INFO] [stderr] | [INFO] [stderr] 9 | lexer::{Head, Token, TokenStream}, [INFO] [stderr] | ^^^^ ^^^^^^^^^^^ [INFO] [stderr] 10 | parser::LogExpr, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] 11 | utils::{Offset, Spanned}, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `nom::InputIter` [INFO] [stderr] --> src/semantic_tokens.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use nom::InputIter; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `InputTakeAtPosition` [INFO] [stderr] --> src/parser/lexer.rs:19:44 [INFO] [stderr] | [INFO] [stderr] 19 | use nom::{Compare, InputLength, InputTake, InputTakeAtPosition, Needed, Parser}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `nom_supreme::tag::TagError` [INFO] [stderr] --> src/parser/parser.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use nom_supreme::tag::TagError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/parser/errors.rs:165:42 [INFO] [stderr] | [INFO] [stderr] 165 | fn append(input: I, kind: ErrorKind, mut other: Self) -> Self { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `parse_comment` is never used [INFO] [stderr] --> src/parser/parser.rs:201:25 [INFO] [stderr] | [INFO] [stderr] 201 | impl_token_type_parser!(parse_comment, "comment", Comment, String, |x| x); [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] = note: this warning originates in the macro `impl_token_type_parser` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: function `parse_delimiter` is never used [INFO] [stderr] --> src/parser/parser.rs:205:5 [INFO] [stderr] | [INFO] [stderr] 205 | parse_delimiter, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `impl_token_type_parser` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser/lexer.rs:319:30 [INFO] [stderr] | [INFO] [stderr] 319 | fn string<'a, E>(input: Span<'a>) -> Result [INFO] [stderr] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 319 | fn string<'a, E>(input: Span<'a>) -> Result<'a, E> [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser/lexer.rs:326:44 [INFO] [stderr] | [INFO] [stderr] 326 | fn double_quoted_string<'a, E>(input: Span<'a>) -> Result [INFO] [stderr] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 326 | fn double_quoted_string<'a, E>(input: Span<'a>) -> Result<'a, E> [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser/lexer.rs:356:56 [INFO] [stderr] | [INFO] [stderr] 356 | fn raw_string<'a, E: ParseError>>(input: Span<'a>) -> Result [INFO] [stderr] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 356 | fn raw_string<'a, E: ParseError>>(input: Span<'a>) -> Result<'a, E> [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser/lexer.rs:370:50 [INFO] [stderr] | [INFO] [stderr] 370 | fn word<'a, E: ParseError>>(input: Span<'a>) -> Result { [INFO] [stderr] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 370 | fn word<'a, E: ParseError>>(input: Span<'a>) -> Result<'a, E> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser/lexer.rs:375:31 [INFO] [stderr] | [INFO] [stderr] 375 | fn comment<'a, E>(input: Span<'a>) -> Result [INFO] [stderr] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 375 | fn comment<'a, E>(input: Span<'a>) -> Result<'a, E> [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser/parser.rs:46:41 [INFO] [stderr] | [INFO] [stderr] 46 | Spanned::from((selector.span.clone(), LogExpr { selector, pipeline })), [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stderr] = note: `#[warn(noop_method_call)]` on by default [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser/pipeline.rs:34:38 [INFO] [stderr] | [INFO] [stderr] 34 | Spanned::from((stages[0].span.clone(), PipelineExpr { stages })), [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser/pipeline.rs:53:31 [INFO] [stderr] | [INFO] [stderr] 53 | Spanned::from((lf.span.clone(), PipelineStage::LineFilter(lf))), [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser/pipeline.rs:71:40 [INFO] [stderr] | [INFO] [stderr] 71 | let lf = Spanned::from((filter.span.clone(), LineFilter { filter, s })); [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: unused imports: `CompareResult`, `Compare`, `ContextError`, `ErrorKind`, `Error`, `ParseError`, `bytes::complete::tag`, `make_error`, and `separated_pair` [INFO] [stderr] --> src/parser/parser.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | bytes::complete::tag, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 4 | combinator::{eof, map, opt, peek}, [INFO] [stderr] 5 | error::{context, make_error, ContextError, Error, ErrorKind, ParseError, VerboseError}, [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] 6 | multi::separated_list0, [INFO] [stderr] 7 | sequence::{delimited, separated_pair, terminated, Tuple}, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 8 | Compare, CompareResult, IResult, InputLength, InputTake, Parser, [INFO] [stderr] | ^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ContextError`, `ParseError`, and `convert_error` [INFO] [stderr] --> src/parser/pipeline.rs:3:22 [INFO] [stderr] | [INFO] [stderr] 3 | error::{context, convert_error, ContextError, ParseError, VerboseError}, [INFO] [stderr] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `logql-language-server` (lib) generated 42 warnings (run `cargo fix --lib -p logql-language-server` to apply 37 suggestions) [INFO] [stderr] warning: `logql-language-server` (lib test) generated 40 warnings (38 duplicates) (run `cargo fix --lib -p logql-language-server --tests` to apply 2 suggestions) [INFO] [stderr] warning: unused import: `std::sync::Arc` [INFO] [stderr] --> src/main.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::sync::Arc; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `log::warn` [INFO] [stderr] --> src/main.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use log::warn; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `LogExpr` and `parse_log_expr` [INFO] [stderr] --> src/main.rs:7:52 [INFO] [stderr] | [INFO] [stderr] 7 | use logql_language_server::parser::parser::{parse, parse_log_expr, LogExpr}; [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Offset` [INFO] [stderr] --> src/main.rs:8:44 [INFO] [stderr] | [INFO] [stderr] 8 | use logql_language_server::parser::utils::{Offset, Span, Spanned}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `VerboseErrorKind`, `VerboseError`, and `convert_error` [INFO] [stderr] --> src/main.rs:10:18 [INFO] [stderr] | [INFO] [stderr] 10 | use nom::error::{convert_error, VerboseError, VerboseErrorKind}; [INFO] [stderr] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ropey::Rope` [INFO] [stderr] --> src/main.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use ropey::Rope; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stderr] --> src/main.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | use serde::{Deserialize, Serialize}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/main.rs:78:61 [INFO] [stderr] | [INFO] [stderr] 78 | ... token_types: LEGEND_TYPE.clone().into(), [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `[SemanticTokenType]` does not implement `Clone`, so calling `clone` on `&[SemanticTokenType]` copies the reference, which does not do anything and can be removed [INFO] [stderr] = note: `#[warn(noop_method_call)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `logql-language-server` (bin "logql-language-server" test) generated 8 warnings (run `cargo fix --bin "logql-language-server" --tests` to apply 8 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/logql_language_server-e49b7b4c9ffab61c) [INFO] [stdout] [INFO] [stdout] running 8 tests [INFO] [stdout] test parser::parser::test_parse_filter ... ok [INFO] [stdout] test parser::parser::test_parse_label_matcher ... ok [INFO] [stdout] test parser::parser::test_parse_selector ... ok [INFO] [stdout] test parser::lexer::test_raw_string ... ok [INFO] [stdout] test parser::lexer::test_input ... ok [INFO] [stdout] test parser::pipeline::test_parse_line_filter ... ok [INFO] [stdout] test parser::pipeline::test_parse_pipeline_expr ... ok [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/logql_language_server-1f6865b543bb178c) [INFO] [stdout] test parser::lexer::test_string ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Doc-tests logql_language_server [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "9d5176b575d3722013b53da442f09ac85a4efbae974c929c63cb679c815e4ca9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9d5176b575d3722013b53da442f09ac85a4efbae974c929c63cb679c815e4ca9", kill_on_drop: false }` [INFO] [stdout] 9d5176b575d3722013b53da442f09ac85a4efbae974c929c63cb679c815e4ca9