[INFO] fetching crate commands 0.0.5...
[INFO] testing commands-0.0.5 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate commands 0.0.5 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate commands 0.0.5
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate commands 0.0.5
[INFO] tweaked toml for crates.io crate commands 0.0.5 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate commands 0.0.5 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 17 packages to latest compatible versions
[INFO] [stderr]       Adding linefeed v0.2.6 (available: v0.6.0)
[INFO] [stderr]       Adding rustyline v1.0.0 (available: v17.0.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded bitflags v0.4.0
[INFO] [stderr]   Downloaded rustyline v1.0.0
[INFO] [stderr]   Downloaded shell32-sys v0.1.2
[INFO] [stderr]   Downloaded ole32-sys v0.2.0
[INFO] [stderr]   Downloaded encode_unicode v0.1.3
[INFO] [stderr]   Downloaded semver v0.1.20
[INFO] [stderr]   Downloaded rustc_version v0.1.7
[INFO] [stderr]   Downloaded linefeed v0.2.6
[INFO] [stderr]   Downloaded nix v0.5.1
[INFO] [stderr]   Downloaded nix v0.7.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b53d22551cde7afc0735f7482dcebf1b89acbc8e71dedef9381260b67fefa636
[INFO] running `Command { std: "docker" "start" "-a" "b53d22551cde7afc0735f7482dcebf1b89acbc8e71dedef9381260b67fefa636", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b53d22551cde7afc0735f7482dcebf1b89acbc8e71dedef9381260b67fefa636", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b53d22551cde7afc0735f7482dcebf1b89acbc8e71dedef9381260b67fefa636", kill_on_drop: false }`
[INFO] [stdout] b53d22551cde7afc0735f7482dcebf1b89acbc8e71dedef9381260b67fefa636
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3a907f56bbce1b551215e628a4534d07102e3e40b4a643812acef15b5c6b4fe5
[INFO] running `Command { std: "docker" "start" "-a" "3a907f56bbce1b551215e628a4534d07102e3e40b4a643812acef15b5c6b4fe5", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling commands v0.0.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser/mod.rs:270:36
[INFO] [stdout]     |
[INFO] [stdout] 270 |                 TokenType::Word => try!(self.advance(token)),
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/command_table.rs:23:21
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub command: Rc<Command>,
[INFO] [stdout]    |                     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub command: Rc<dyn Command>,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/parser/mod.rs:367:14
[INFO] [stdout]     |
[INFO] [stdout] 367 |         self.description().fmt(f)
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/parser/mod.rs:391:14
[INFO] [stdout]     |
[INFO] [stdout] 391 |         self.description().fmt(f)
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/tokenizer.rs:157:14
[INFO] [stdout]     |
[INFO] [stdout] 157 |         self.description().fmt(f)
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parser/mod.rs:231:21
[INFO] [stdout]     |
[INFO] [stdout] 231 |     pub fn complete(&self, token: Option<Token<'text>>) -> Vec<Completion> {
[INFO] [stdout]     |                     ^^^^^ the lifetime is elided here          ^^^^^^^^^^ the same lifetime is hidden 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] 231 |     pub fn complete(&self, token: Option<Token<'text>>) -> Vec<Completion<'_>> {
[INFO] [stdout]     |                                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/tokenizer.rs:188:86
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn new(text: &'text str, token_type: TokenType, location: SourceLocation) -> Token {
[INFO] [stdout]     |                       ----- the lifetime is named here                               ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'text`
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn new(text: &'text str, token_type: TokenType, location: SourceLocation) -> Token<'text> {
[INFO] [stdout]     |                                                                                           +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/tokenizer.rs:220:33
[INFO] [stdout]     |
[INFO] [stdout] 220 |     fn new(text: &'text str) -> Tokenizer {
[INFO] [stdout]     |                   -----         ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'text`
[INFO] [stdout]     |
[INFO] [stdout] 220 |     fn new(text: &'text str) -> Tokenizer<'text> {
[INFO] [stdout]     |                                          +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/tokenizer.rs:387:23
[INFO] [stdout]     |
[INFO] [stdout] 387 | pub fn tokenize(text: &str) -> Result<Vec<Token>, TokenizerError> {
[INFO] [stdout]     |                       ^^^^                ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 387 | pub fn tokenize(text: &str) -> Result<Vec<Token<'_>>, TokenizerError> {
[INFO] [stdout]     |                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.57s
[INFO] running `Command { std: "docker" "inspect" "3a907f56bbce1b551215e628a4534d07102e3e40b4a643812acef15b5c6b4fe5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3a907f56bbce1b551215e628a4534d07102e3e40b4a643812acef15b5c6b4fe5", kill_on_drop: false }`
[INFO] [stdout] 3a907f56bbce1b551215e628a4534d07102e3e40b4a643812acef15b5c6b4fe5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 33d2a8e2d33233694233c826b6ce68df2e2c228fd1dc1a121d69cbe2d2961a9e
[INFO] running `Command { std: "docker" "start" "-a" "33d2a8e2d33233694233c826b6ce68df2e2c228fd1dc1a121d69cbe2d2961a9e", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling semver v0.1.20
[INFO] [stderr]    Compiling bitflags v0.4.0
[INFO] [stderr]    Compiling encode_unicode v0.1.3
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser/mod.rs:270:36
[INFO] [stdout]     |
[INFO] [stdout] 270 |                 TokenType::Word => try!(self.advance(token)),
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/command_table.rs:23:21
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub command: Rc<Command>,
[INFO] [stdout]    |                     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub command: Rc<dyn Command>,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/parser/mod.rs:367:14
[INFO] [stdout]     |
[INFO] [stdout] 367 |         self.description().fmt(f)
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/parser/mod.rs:391:14
[INFO] [stdout]     |
[INFO] [stdout] 391 |         self.description().fmt(f)
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/tokenizer.rs:157:14
[INFO] [stdout]     |
[INFO] [stdout] 157 |         self.description().fmt(f)
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parser/mod.rs:231:21
[INFO] [stdout]     |
[INFO] [stdout] 231 |     pub fn complete(&self, token: Option<Token<'text>>) -> Vec<Completion> {
[INFO] [stdout]     |                     ^^^^^ the lifetime is elided here          ^^^^^^^^^^ the same lifetime is hidden 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] 231 |     pub fn complete(&self, token: Option<Token<'text>>) -> Vec<Completion<'_>> {
[INFO] [stdout]     |                                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/tokenizer.rs:188:86
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn new(text: &'text str, token_type: TokenType, location: SourceLocation) -> Token {
[INFO] [stdout]     |                       ----- the lifetime is named here                               ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'text`
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn new(text: &'text str, token_type: TokenType, location: SourceLocation) -> Token<'text> {
[INFO] [stdout]     |                                                                                           +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/tokenizer.rs:220:33
[INFO] [stdout]     |
[INFO] [stdout] 220 |     fn new(text: &'text str) -> Tokenizer {
[INFO] [stdout]     |                   -----         ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'text`
[INFO] [stdout]     |
[INFO] [stdout] 220 |     fn new(text: &'text str) -> Tokenizer<'text> {
[INFO] [stdout]     |                                          +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/tokenizer.rs:387:23
[INFO] [stdout]     |
[INFO] [stdout] 387 | pub fn tokenize(text: &str) -> Result<Vec<Token>, TokenizerError> {
[INFO] [stdout]     |                       ^^^^                ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 387 | pub fn tokenize(text: &str) -> Result<Vec<Token<'_>>, TokenizerError> {
[INFO] [stdout]     |                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling nix v0.5.1
[INFO] [stderr]    Compiling rustc_version v0.1.7
[INFO] [stderr]    Compiling nix v0.7.0
[INFO] [stderr]    Compiling rustyline v1.0.0
[INFO] [stderr]    Compiling linefeed v0.2.6
[INFO] [stderr]    Compiling commands v0.0.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser/mod.rs:270:36
[INFO] [stdout]     |
[INFO] [stdout] 270 |                 TokenType::Word => try!(self.advance(token)),
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/command_table.rs:23:21
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub command: Rc<Command>,
[INFO] [stdout]    |                     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub command: Rc<dyn Command>,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/parser/mod.rs:367:14
[INFO] [stdout]     |
[INFO] [stdout] 367 |         self.description().fmt(f)
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/parser/mod.rs:391:14
[INFO] [stdout]     |
[INFO] [stdout] 391 |         self.description().fmt(f)
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/tokenizer.rs:157:14
[INFO] [stdout]     |
[INFO] [stdout] 157 |         self.description().fmt(f)
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parser/mod.rs:231:21
[INFO] [stdout]     |
[INFO] [stdout] 231 |     pub fn complete(&self, token: Option<Token<'text>>) -> Vec<Completion> {
[INFO] [stdout]     |                     ^^^^^ the lifetime is elided here          ^^^^^^^^^^ the same lifetime is hidden 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] 231 |     pub fn complete(&self, token: Option<Token<'text>>) -> Vec<Completion<'_>> {
[INFO] [stdout]     |                                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/tokenizer.rs:188:86
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn new(text: &'text str, token_type: TokenType, location: SourceLocation) -> Token {
[INFO] [stdout]     |                       ----- the lifetime is named here                               ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'text`
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn new(text: &'text str, token_type: TokenType, location: SourceLocation) -> Token<'text> {
[INFO] [stdout]     |                                                                                           +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/tokenizer.rs:220:33
[INFO] [stdout]     |
[INFO] [stdout] 220 |     fn new(text: &'text str) -> Tokenizer {
[INFO] [stdout]     |                   -----         ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'text`
[INFO] [stdout]     |
[INFO] [stdout] 220 |     fn new(text: &'text str) -> Tokenizer<'text> {
[INFO] [stdout]     |                                          +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/tokenizer.rs:387:23
[INFO] [stdout]     |
[INFO] [stdout] 387 | pub fn tokenize(text: &str) -> Result<Vec<Token>, TokenizerError> {
[INFO] [stdout]     |                       ^^^^                ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 387 | pub fn tokenize(text: &str) -> Result<Vec<Token<'_>>, TokenizerError> {
[INFO] [stdout]     |                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/tokenizer.rs:399:23
[INFO] [stdout]     |
[INFO] [stdout] 399 |     fn mk_token(text: &str, token_type: TokenType, start: usize, end: usize) -> Token {
[INFO] [stdout]     |                       ^^^^ the lifetime is elided here                          ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 399 |     fn mk_token(text: &str, token_type: TokenType, start: usize, end: usize) -> Token<'_> {
[INFO] [stdout]     |                                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 4.74s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.4.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "33d2a8e2d33233694233c826b6ce68df2e2c228fd1dc1a121d69cbe2d2961a9e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "33d2a8e2d33233694233c826b6ce68df2e2c228fd1dc1a121d69cbe2d2961a9e", kill_on_drop: false }`
[INFO] [stdout] 33d2a8e2d33233694233c826b6ce68df2e2c228fd1dc1a121d69cbe2d2961a9e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] c348c24582d5fa291d4c96598f4feb7e603ce2f05183581e3a5e4ed90ff9b2a9
[INFO] running `Command { std: "docker" "start" "-a" "c348c24582d5fa291d4c96598f4feb7e603ce2f05183581e3a5e4ed90ff9b2a9", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/parser/mod.rs:270:36
[INFO] [stderr]     |
[INFO] [stderr] 270 |                 TokenType::Word => try!(self.advance(token)),
[INFO] [stderr]     |                                    ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/command_table.rs:23:21
[INFO] [stderr]    |
[INFO] [stderr] 23 |     pub command: Rc<Command>,
[INFO] [stderr]    |                     ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 23 |     pub command: Rc<dyn Command>,
[INFO] [stderr]    |                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> src/parser/mod.rs:367:14
[INFO] [stderr]     |
[INFO] [stderr] 367 |         self.description().fmt(f)
[INFO] [stderr]     |              ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> src/parser/mod.rs:391:14
[INFO] [stderr]     |
[INFO] [stderr] 391 |         self.description().fmt(f)
[INFO] [stderr]     |              ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> src/tokenizer.rs:157:14
[INFO] [stderr]     |
[INFO] [stderr] 157 |         self.description().fmt(f)
[INFO] [stderr]     |              ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/parser/mod.rs:231:21
[INFO] [stderr]     |
[INFO] [stderr] 231 |     pub fn complete(&self, token: Option<Token<'text>>) -> Vec<Completion> {
[INFO] [stderr]     |                     ^^^^^ the lifetime is elided here          ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 231 |     pub fn complete(&self, token: Option<Token<'text>>) -> Vec<Completion<'_>> {
[INFO] [stderr]     |                                                                          ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> src/tokenizer.rs:188:86
[INFO] [stderr]     |
[INFO] [stderr] 188 |     pub fn new(text: &'text str, token_type: TokenType, location: SourceLocation) -> Token {
[INFO] [stderr]     |                       ----- the lifetime is named here                               ^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'text`
[INFO] [stderr]     |
[INFO] [stderr] 188 |     pub fn new(text: &'text str, token_type: TokenType, location: SourceLocation) -> Token<'text> {
[INFO] [stderr]     |                                                                                           +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> src/tokenizer.rs:220:33
[INFO] [stderr]     |
[INFO] [stderr] 220 |     fn new(text: &'text str) -> Tokenizer {
[INFO] [stderr]     |                   -----         ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                   |
[INFO] [stderr]     |                   the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'text`
[INFO] [stderr]     |
[INFO] [stderr] 220 |     fn new(text: &'text str) -> Tokenizer<'text> {
[INFO] [stderr]     |                                          +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/tokenizer.rs:387:23
[INFO] [stderr]     |
[INFO] [stderr] 387 | pub fn tokenize(text: &str) -> Result<Vec<Token>, TokenizerError> {
[INFO] [stderr]     |                       ^^^^                ^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 387 | pub fn tokenize(text: &str) -> Result<Vec<Token<'_>>, TokenizerError> {
[INFO] [stderr]     |                                                ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `commands` (lib) generated 9 warnings (run `cargo fix --lib -p commands` to apply 5 suggestions)
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/tokenizer.rs:399:23
[INFO] [stderr]     |
[INFO] [stderr] 399 |     fn mk_token(text: &str, token_type: TokenType, start: usize, end: usize) -> Token {
[INFO] [stderr]     |                       ^^^^ the lifetime is elided here                          ^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 399 |     fn mk_token(text: &str, token_type: TokenType, start: usize, end: usize) -> Token<'_> {
[INFO] [stderr]     |                                                                                      ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `commands` (lib test) generated 10 warnings (9 duplicates) (run `cargo fix --lib -p commands --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.4.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/commands-68f648aba3ea5a68)
[INFO] [stdout] 
[INFO] [stdout] running 18 tests
[INFO] [stdout] test tokenizer::test::character_not_allowed_here ... ok
[INFO] [stdout] test tokenizer::test::double_quoted_text ... ok
[INFO] [stdout] test tokenizer::test::empty_test ... ok
[INFO] [stdout] test tokenizer::test::multiple_words ... ok
[INFO] [stdout] test tokenizer::test::single_quoted_text ... ok
[INFO] [stdout] test util::test::single_lcp ... ok
[INFO] [stdout] test util::test::valid_is_shortest_lcp ... ok
[INFO] [stdout] test util::test::valid_lcp ... ok
[INFO] [stdout] test util::test::no_lcp ... ok
[INFO] [stdout] test tokenizer::test::single_word ... ok
[INFO] [stdout] test tokenizer::test::escaped_whitespace_in_word ... ok
[INFO] [stdout] test util::test::empty_lcp ... ok
[INFO] [stdout] test parser::test::verify_signals_no_command - should panic ... ok
[INFO] [stdout] test parser::test::parse_signals_ambiguous_match - should panic ... ok
[INFO] [stdout] test parser::test::parse_signals_no_matches - should panic ... ok
[INFO] [stdout] test tokenizer::test::escaped_double_quote_at_end_of_input - should panic ... ok
[INFO] [stdout] test tokenizer::test::escaping_backslash_at_end_of_input - should panic ... ok
[INFO] [stderr]    Doc-tests commands
[INFO] [stdout] test tokenizer::test::unclosed_double_quote_at_end_of_input - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test src/parser/mod.rs - parser (line 79) ... ok
[INFO] [stdout] test src/parser/mod.rs - parser (line 89) ... ok
[INFO] [stdout] test src/tokenizer.rs - tokenizer (line 23) ... ok
[INFO] [stdout] test src/parser/mod.rs - parser::Parser (line 141) ... ok
[INFO] [stdout] test src/parser/mod.rs - parser::Parser<'text>::parse (line 253) ... ok
[INFO] [stdout] test src/util.rs - util::longest_common_prefix (line 16) ... ok
[INFO] [stdout] test src/parser/mod.rs - parser::Parser<'text>::complete (line 195) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.61s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "c348c24582d5fa291d4c96598f4feb7e603ce2f05183581e3a5e4ed90ff9b2a9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c348c24582d5fa291d4c96598f4feb7e603ce2f05183581e3a5e4ed90ff9b2a9", kill_on_drop: false }`
[INFO] [stdout] c348c24582d5fa291d4c96598f4feb7e603ce2f05183581e3a5e4ed90ff9b2a9
