[INFO] fetching crate pircolate 0.2.1... [INFO] testing pircolate-0.2.1 against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_libc_patch_0 [INFO] extracting crate pircolate 0.2.1 into /workspace/builds/worker-6-tc1/source [INFO] started tweaking crates.io crate pircolate 0.2.1 [INFO] finished tweaking crates.io crate pircolate 0.2.1 [INFO] tweaked toml for crates.io crate pircolate 0.2.1 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate pircolate 0.2.1 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] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 20 packages to latest compatible versions [INFO] [stderr] Adding error-chain v0.10.0 (available: v0.12.4) [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: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] dd5f50846adc35564e945516443de2d2607310e240e3c1b6ccc73c1c831f6504 [INFO] running `Command { std: "docker" "start" "-a" "dd5f50846adc35564e945516443de2d2607310e240e3c1b6ccc73c1c831f6504", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "dd5f50846adc35564e945516443de2d2607310e240e3c1b6ccc73c1c831f6504", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "dd5f50846adc35564e945516443de2d2607310e240e3c1b6ccc73c1c831f6504", kill_on_drop: false }` [INFO] [stdout] dd5f50846adc35564e945516443de2d2607310e240e3c1b6ccc73c1c831f6504 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 04bf12c8f531ef016b8b8e704bfdc18e9169f9c2165a420a9d02ddc190d5c0e3 [INFO] running `Command { std: "docker" "start" "-a" "04bf12c8f531ef016b8b8e704bfdc18e9169f9c2165a420a9d02ddc190d5c0e3", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling memchr v2.7.5 [INFO] [stderr] Compiling object v0.36.7 [INFO] [stderr] Compiling backtrace v0.3.75 [INFO] [stderr] Compiling error-chain v0.10.0 [INFO] [stderr] Compiling pircolate v0.2.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/error.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | / error_chain! { [INFO] [stdout] 5 | | foreign_links { [INFO] [stdout] 6 | | Utf8(::std::string::FromUtf8Error); [INFO] [stdout] ... | [INFO] [stdout] 20 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting [INFO] [stdout] --> src/error.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | / error_chain! { [INFO] [stdout] 5 | | foreign_links { [INFO] [stdout] 6 | | Utf8(::std::string::FromUtf8Error); [INFO] [stdout] ... | [INFO] [stdout] 20 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (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/message/mod.rs:79:21 [INFO] [stdout] | [INFO] [stdout] 79 | pub fn raw_tags(&self) -> TagIter { [INFO] [stdout] | ^^^^^ ------- the lifetime gets resolved as `'_` [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 remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 79 | pub fn raw_tags(&self) -> TagIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/message/mod.rs:102:21 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn raw_args(&self) -> ArgumentIter { [INFO] [stdout] | ^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 102 | pub fn raw_args(&self) -> ArgumentIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/message/parser.rs:57:22 [INFO] [stdout] | [INFO] [stdout] 57 | fn parse_tags(input: &[u8]) -> ParseResult>> { [INFO] [stdout] | ^^^^^ ---------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 57 | fn parse_tags(input: &[u8]) -> ParseResult<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/message/parser.rs:109:24 [INFO] [stdout] | [INFO] [stdout] 109 | fn parse_prefix(input: &[u8], mut position: usize) -> ParseResult> { [INFO] [stdout] | ^^^^^ -------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 109 | fn parse_prefix(input: &[u8], mut position: usize) -> ParseResult<'_, Option> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/message/parser.rs:165:25 [INFO] [stdout] | [INFO] [stdout] 165 | fn parse_command(input: &[u8], mut position: usize) -> ParseResult> { [INFO] [stdout] | ^^^^^ ------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 165 | fn parse_command(input: &[u8], mut position: usize) -> ParseResult<'_, Range> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/message/parser.rs:190:22 [INFO] [stdout] | [INFO] [stdout] 190 | fn parse_args(input: &[u8], mut position: usize) -> ParseResult>>> { [INFO] [stdout] | ^^^^^ -------------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 190 | fn parse_args(input: &[u8], mut position: usize) -> ParseResult<'_, Option>>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 182 | / command! { [INFO] [stdout] 183 | | /// Represents a PING command. The first element is the host. [INFO] [stdout] 184 | | /// [INFO] [stdout] 185 | | /// # Examples [INFO] [stdout] ... | [INFO] [stdout] 199 | | ("PING" => Ping(host)) [INFO] [stdout] 200 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 202 | / command! { [INFO] [stdout] 203 | | /// Represents a PONG command. The first element is the host. [INFO] [stdout] 204 | | /// [INFO] [stdout] 205 | | /// # Examples [INFO] [stdout] ... | [INFO] [stdout] 219 | | ("PONG" => Pong(host)) [INFO] [stdout] 220 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 222 | / command! { [INFO] [stdout] 223 | | /// Represents a PRIVMSG command. The first element is the target of the message and [INFO] [stdout] 224 | | /// the second eleement is the message. [INFO] [stdout] 225 | | /// [INFO] [stdout] ... | [INFO] [stdout] 240 | | ("PRIVMSG" => PrivMsg(target, message)) [INFO] [stdout] 241 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 251 | / command! { [INFO] [stdout] 252 | | /// Represents a WELCOME numeric. The first element is the unsername and the second element is the welcome message. [INFO] [stdout] 253 | | ("001" => Welcome(user, message)) [INFO] [stdout] 254 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 256 | / command! { [INFO] [stdout] 257 | | /// Represents a YOURHOST numeric. The first element is the unsername and the second element is the yourhost message. [INFO] [stdout] 258 | | ("002" => YourHost(user, message)) [INFO] [stdout] 259 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 261 | / command!{ [INFO] [stdout] 262 | | /// Represents a CREATED numeric. The first element is the unsername and the second element is the created message. [INFO] [stdout] 263 | | ("003" => Created(user, message)) [INFO] [stdout] 264 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 266 | / command!{ [INFO] [stdout] 267 | | /// Represents a MYINFO numeric. The first element is the username and the second element is the server info message. [INFO] [stdout] 268 | | ("004" => ServerInfo(user, message)) [INFO] [stdout] 269 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.14s [INFO] running `Command { std: "docker" "inspect" "04bf12c8f531ef016b8b8e704bfdc18e9169f9c2165a420a9d02ddc190d5c0e3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "04bf12c8f531ef016b8b8e704bfdc18e9169f9c2165a420a9d02ddc190d5c0e3", kill_on_drop: false }` [INFO] [stdout] 04bf12c8f531ef016b8b8e704bfdc18e9169f9c2165a420a9d02ddc190d5c0e3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/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] 642712c437c8744aacdb271499745a3af3228551a9c6a6f3a5b12e1629511fea [INFO] running `Command { std: "docker" "start" "-a" "642712c437c8744aacdb271499745a3af3228551a9c6a6f3a5b12e1629511fea", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/error.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | / error_chain! { [INFO] [stdout] 5 | | foreign_links { [INFO] [stdout] 6 | | Utf8(::std::string::FromUtf8Error); [INFO] [stdout] ... | [INFO] [stdout] 20 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting [INFO] [stdout] --> src/error.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | / error_chain! { [INFO] [stdout] 5 | | foreign_links { [INFO] [stdout] 6 | | Utf8(::std::string::FromUtf8Error); [INFO] [stdout] ... | [INFO] [stdout] 20 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (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/message/mod.rs:79:21 [INFO] [stdout] | [INFO] [stdout] 79 | pub fn raw_tags(&self) -> TagIter { [INFO] [stdout] | ^^^^^ ------- the lifetime gets resolved as `'_` [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 remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 79 | pub fn raw_tags(&self) -> TagIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/message/mod.rs:102:21 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn raw_args(&self) -> ArgumentIter { [INFO] [stdout] | ^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 102 | pub fn raw_args(&self) -> ArgumentIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/message/parser.rs:57:22 [INFO] [stdout] | [INFO] [stdout] 57 | fn parse_tags(input: &[u8]) -> ParseResult>> { [INFO] [stdout] | ^^^^^ ---------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 57 | fn parse_tags(input: &[u8]) -> ParseResult<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/message/parser.rs:109:24 [INFO] [stdout] | [INFO] [stdout] 109 | fn parse_prefix(input: &[u8], mut position: usize) -> ParseResult> { [INFO] [stdout] | ^^^^^ -------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 109 | fn parse_prefix(input: &[u8], mut position: usize) -> ParseResult<'_, Option> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/message/parser.rs:165:25 [INFO] [stdout] | [INFO] [stdout] 165 | fn parse_command(input: &[u8], mut position: usize) -> ParseResult> { [INFO] [stdout] | ^^^^^ ------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 165 | fn parse_command(input: &[u8], mut position: usize) -> ParseResult<'_, Range> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/message/parser.rs:190:22 [INFO] [stdout] | [INFO] [stdout] 190 | fn parse_args(input: &[u8], mut position: usize) -> ParseResult>>> { [INFO] [stdout] | ^^^^^ -------------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 190 | fn parse_args(input: &[u8], mut position: usize) -> ParseResult<'_, Option>>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 182 | / command! { [INFO] [stdout] 183 | | /// Represents a PING command. The first element is the host. [INFO] [stdout] 184 | | /// [INFO] [stdout] 185 | | /// # Examples [INFO] [stdout] ... | [INFO] [stdout] 199 | | ("PING" => Ping(host)) [INFO] [stdout] 200 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 202 | / command! { [INFO] [stdout] 203 | | /// Represents a PONG command. The first element is the host. [INFO] [stdout] 204 | | /// [INFO] [stdout] 205 | | /// # Examples [INFO] [stdout] ... | [INFO] [stdout] 219 | | ("PONG" => Pong(host)) [INFO] [stdout] 220 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 222 | / command! { [INFO] [stdout] 223 | | /// Represents a PRIVMSG command. The first element is the target of the message and [INFO] [stdout] 224 | | /// the second eleement is the message. [INFO] [stdout] 225 | | /// [INFO] [stdout] ... | [INFO] [stdout] 240 | | ("PRIVMSG" => PrivMsg(target, message)) [INFO] [stdout] 241 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 251 | / command! { [INFO] [stdout] 252 | | /// Represents a WELCOME numeric. The first element is the unsername and the second element is the welcome message. [INFO] [stdout] 253 | | ("001" => Welcome(user, message)) [INFO] [stdout] 254 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 256 | / command! { [INFO] [stdout] 257 | | /// Represents a YOURHOST numeric. The first element is the unsername and the second element is the yourhost message. [INFO] [stdout] 258 | | ("002" => YourHost(user, message)) [INFO] [stdout] 259 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling pircolate v0.2.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 261 | / command!{ [INFO] [stdout] 262 | | /// Represents a CREATED numeric. The first element is the unsername and the second element is the created message. [INFO] [stdout] 263 | | ("003" => Created(user, message)) [INFO] [stdout] 264 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 266 | / command!{ [INFO] [stdout] 267 | | /// Represents a MYINFO numeric. The first element is the username and the second element is the server info message. [INFO] [stdout] 268 | | ("004" => ServerInfo(user, message)) [INFO] [stdout] 269 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [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/error.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | / error_chain! { [INFO] [stdout] 5 | | foreign_links { [INFO] [stdout] 6 | | Utf8(::std::string::FromUtf8Error); [INFO] [stdout] ... | [INFO] [stdout] 20 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting [INFO] [stdout] --> src/error.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | / error_chain! { [INFO] [stdout] 5 | | foreign_links { [INFO] [stdout] 6 | | Utf8(::std::string::FromUtf8Error); [INFO] [stdout] ... | [INFO] [stdout] 20 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (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/message/mod.rs:79:21 [INFO] [stdout] | [INFO] [stdout] 79 | pub fn raw_tags(&self) -> TagIter { [INFO] [stdout] | ^^^^^ ------- the lifetime gets resolved as `'_` [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 remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 79 | pub fn raw_tags(&self) -> TagIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/message/mod.rs:102:21 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn raw_args(&self) -> ArgumentIter { [INFO] [stdout] | ^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 102 | pub fn raw_args(&self) -> ArgumentIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/message/parser.rs:57:22 [INFO] [stdout] | [INFO] [stdout] 57 | fn parse_tags(input: &[u8]) -> ParseResult>> { [INFO] [stdout] | ^^^^^ ---------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 57 | fn parse_tags(input: &[u8]) -> ParseResult<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/message/parser.rs:109:24 [INFO] [stdout] | [INFO] [stdout] 109 | fn parse_prefix(input: &[u8], mut position: usize) -> ParseResult> { [INFO] [stdout] | ^^^^^ -------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 109 | fn parse_prefix(input: &[u8], mut position: usize) -> ParseResult<'_, Option> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/message/parser.rs:165:25 [INFO] [stdout] | [INFO] [stdout] 165 | fn parse_command(input: &[u8], mut position: usize) -> ParseResult> { [INFO] [stdout] | ^^^^^ ------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 165 | fn parse_command(input: &[u8], mut position: usize) -> ParseResult<'_, Range> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/message/parser.rs:190:22 [INFO] [stdout] | [INFO] [stdout] 190 | fn parse_args(input: &[u8], mut position: usize) -> ParseResult>>> { [INFO] [stdout] | ^^^^^ -------------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 190 | fn parse_args(input: &[u8], mut position: usize) -> ParseResult<'_, Option>>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 182 | / command! { [INFO] [stdout] 183 | | /// Represents a PING command. The first element is the host. [INFO] [stdout] 184 | | /// [INFO] [stdout] 185 | | /// # Examples [INFO] [stdout] ... | [INFO] [stdout] 199 | | ("PING" => Ping(host)) [INFO] [stdout] 200 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 202 | / command! { [INFO] [stdout] 203 | | /// Represents a PONG command. The first element is the host. [INFO] [stdout] 204 | | /// [INFO] [stdout] 205 | | /// # Examples [INFO] [stdout] ... | [INFO] [stdout] 219 | | ("PONG" => Pong(host)) [INFO] [stdout] 220 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 222 | / command! { [INFO] [stdout] 223 | | /// Represents a PRIVMSG command. The first element is the target of the message and [INFO] [stdout] 224 | | /// the second eleement is the message. [INFO] [stdout] 225 | | /// [INFO] [stdout] ... | [INFO] [stdout] 240 | | ("PRIVMSG" => PrivMsg(target, message)) [INFO] [stdout] 241 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 251 | / command! { [INFO] [stdout] 252 | | /// Represents a WELCOME numeric. The first element is the unsername and the second element is the welcome message. [INFO] [stdout] 253 | | ("001" => Welcome(user, message)) [INFO] [stdout] 254 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 256 | / command! { [INFO] [stdout] 257 | | /// Represents a YOURHOST numeric. The first element is the unsername and the second element is the yourhost message. [INFO] [stdout] 258 | | ("002" => YourHost(user, message)) [INFO] [stdout] 259 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 261 | / command!{ [INFO] [stdout] 262 | | /// Represents a CREATED numeric. The first element is the unsername and the second element is the created message. [INFO] [stdout] 263 | | ("003" => Created(user, message)) [INFO] [stdout] 264 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/command.rs:162:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stdout] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 266 | / command!{ [INFO] [stdout] 267 | | /// Represents a MYINFO numeric. The first element is the username and the second element is the server info message. [INFO] [stdout] 268 | | ("004" => ServerInfo(user, message)) [INFO] [stdout] 269 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.44s [INFO] running `Command { std: "docker" "inspect" "642712c437c8744aacdb271499745a3af3228551a9c6a6f3a5b12e1629511fea", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "642712c437c8744aacdb271499745a3af3228551a9c6a6f3a5b12e1629511fea", kill_on_drop: false }` [INFO] [stdout] 642712c437c8744aacdb271499745a3af3228551a9c6a6f3a5b12e1629511fea [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] d12f598d8813e5ac86d04f8cd89f7de92b645bfd155ec7f6db7bc0c0473611db [INFO] running `Command { std: "docker" "start" "-a" "d12f598d8813e5ac86d04f8cd89f7de92b645bfd155ec7f6db7bc0c0473611db", 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 method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/error.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / error_chain! { [INFO] [stderr] 5 | | foreign_links { [INFO] [stderr] 6 | | Utf8(::std::string::FromUtf8Error); [INFO] [stderr] ... | [INFO] [stderr] 20 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/error.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / error_chain! { [INFO] [stderr] 5 | | foreign_links { [INFO] [stderr] 6 | | Utf8(::std::string::FromUtf8Error); [INFO] [stderr] ... | [INFO] [stderr] 20 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (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/message/mod.rs:79:21 [INFO] [stderr] | [INFO] [stderr] 79 | pub fn raw_tags(&self) -> TagIter { [INFO] [stderr] | ^^^^^ ------- the lifetime gets resolved as `'_` [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 remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 79 | pub fn raw_tags(&self) -> TagIter<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/message/mod.rs:102:21 [INFO] [stderr] | [INFO] [stderr] 102 | pub fn raw_args(&self) -> ArgumentIter { [INFO] [stderr] | ^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 102 | pub fn raw_args(&self) -> ArgumentIter<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/message/parser.rs:57:22 [INFO] [stderr] | [INFO] [stderr] 57 | fn parse_tags(input: &[u8]) -> ParseResult>> { [INFO] [stderr] | ^^^^^ ---------------------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 57 | fn parse_tags(input: &[u8]) -> ParseResult<'_, Option>> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/message/parser.rs:109:24 [INFO] [stderr] | [INFO] [stderr] 109 | fn parse_prefix(input: &[u8], mut position: usize) -> ParseResult> { [INFO] [stderr] | ^^^^^ -------------------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 109 | fn parse_prefix(input: &[u8], mut position: usize) -> ParseResult<'_, Option> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/message/parser.rs:165:25 [INFO] [stderr] | [INFO] [stderr] 165 | fn parse_command(input: &[u8], mut position: usize) -> ParseResult> { [INFO] [stderr] | ^^^^^ ------------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 165 | fn parse_command(input: &[u8], mut position: usize) -> ParseResult<'_, Range> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/message/parser.rs:190:22 [INFO] [stderr] | [INFO] [stderr] 190 | fn parse_args(input: &[u8], mut position: usize) -> ParseResult>>> { [INFO] [stderr] | ^^^^^ -------------------------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 190 | fn parse_args(input: &[u8], mut position: usize) -> ParseResult<'_, Option>>> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/command.rs:162:67 [INFO] [stderr] | [INFO] [stderr] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stderr] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] ... [INFO] [stderr] 182 | / command! { [INFO] [stderr] 183 | | /// Represents a PING command. The first element is the host. [INFO] [stderr] 184 | | /// [INFO] [stderr] 185 | | /// # Examples [INFO] [stderr] ... | [INFO] [stderr] 199 | | ("PING" => Ping(host)) [INFO] [stderr] 200 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/command.rs:162:67 [INFO] [stderr] | [INFO] [stderr] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stderr] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] ... [INFO] [stderr] 202 | / command! { [INFO] [stderr] 203 | | /// Represents a PONG command. The first element is the host. [INFO] [stderr] 204 | | /// [INFO] [stderr] 205 | | /// # Examples [INFO] [stderr] ... | [INFO] [stderr] 219 | | ("PONG" => Pong(host)) [INFO] [stderr] 220 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/command.rs:162:67 [INFO] [stderr] | [INFO] [stderr] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stderr] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] ... [INFO] [stderr] 222 | / command! { [INFO] [stderr] 223 | | /// Represents a PRIVMSG command. The first element is the target of the message and [INFO] [stderr] 224 | | /// the second eleement is the message. [INFO] [stderr] 225 | | /// [INFO] [stderr] ... | [INFO] [stderr] 240 | | ("PRIVMSG" => PrivMsg(target, message)) [INFO] [stderr] 241 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/command.rs:162:67 [INFO] [stderr] | [INFO] [stderr] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stderr] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] ... [INFO] [stderr] 251 | / command! { [INFO] [stderr] 252 | | /// Represents a WELCOME numeric. The first element is the unsername and the second element is the welcome message. [INFO] [stderr] 253 | | ("001" => Welcome(user, message)) [INFO] [stderr] 254 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/command.rs:162:67 [INFO] [stderr] | [INFO] [stderr] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stderr] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] ... [INFO] [stderr] 256 | / command! { [INFO] [stderr] 257 | | /// Represents a YOURHOST numeric. The first element is the unsername and the second element is the yourhost message. [INFO] [stderr] 258 | | ("002" => YourHost(user, message)) [INFO] [stderr] 259 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/command.rs:162:67 [INFO] [stderr] | [INFO] [stderr] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stderr] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] ... [INFO] [stderr] 261 | / command!{ [INFO] [stderr] 262 | | /// Represents a CREATED numeric. The first element is the unsername and the second element is the created message. [INFO] [stderr] 263 | | ("003" => Created(user, message)) [INFO] [stderr] 264 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/command.rs:162:67 [INFO] [stderr] | [INFO] [stderr] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name> { [INFO] [stderr] | ^^ ------------- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] ... [INFO] [stderr] 266 | / command!{ [INFO] [stderr] 267 | | /// Represents a MYINFO numeric. The first element is the username and the second element is the server info message. [INFO] [stderr] 268 | | ("004" => ServerInfo(user, message)) [INFO] [stderr] 269 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `command` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 162 | fn parse(mut arguments: $crate::command::ArgumentIter<'a>) -> Option<$command_name<'a>> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: `pircolate` (lib) generated 15 warnings (run `cargo fix --lib -p pircolate` to apply 13 suggestions) [INFO] [stderr] warning: `pircolate` (lib test) generated 15 warnings (15 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/pircolate-782186b4e30bd166) [INFO] [stdout] [INFO] [stdout] running 26 tests [INFO] [stdout] test command::tests::test_command_match_with_single_branchj ... ok [INFO] [stdout] test command::tests::test_command_match_with_multiple_branches ... ok [INFO] [stdout] test command::tests::test_names_reply_command ... ok [INFO] [stdout] test command::tests::test_created_command ... ok [INFO] [stdout] test command::tests::test_pong_command ... ok [INFO] [stdout] test command::tests::test_server_info_command ... ok [INFO] [stdout] test command::tests::test_privmsg_command ... ok [INFO] [stdout] test command::tests::test_your_host_command ... ok [INFO] [stdout] test message::parser::tests::parse_command ... ok [INFO] [stdout] test command::tests::test_welcome_command ... ok [INFO] [stdout] test message::parser::tests::parse_command_with_512_byte_long_tags ... ok [INFO] [stdout] test message::parser::tests::parse_command_with_512_byte_long_tags_and_510_byte_long_command ... ok [INFO] [stdout] test message::parser::tests::parse_command_with_basic_prefix ... ok [INFO] [stdout] test message::parser::tests::parse_command_with_multibyte_character_arguments ... ok [INFO] [stdout] test message::parser::tests::parse_command_with_multiple_arguments_and_argument_following_colon ... ok [INFO] [stdout] test message::parser::tests::parse_command_with_multiple_tags ... ok [INFO] [stdout] test message::parser::tests::parse_command_with_prefix_and_argument_following_colon ... ok [INFO] [stdout] test message::parser::tests::parse_command_with_prefix_and_host ... ok [INFO] [stdout] test message::parser::tests::parse_command_with_user_prefix ... ok [INFO] [stdout] test message::parser::tests::parse_command_with_multiple_arguments ... ok [INFO] [stdout] test message::parser::tests::parse_numeric_welcome ... ok [INFO] [stdout] test message::parser::tests::parse_command_with_user_prefix_and_host ... ok [INFO] [stdout] test message::parser::tests::parse_command_with_510_byte_long_command ... ok [INFO] [stdout] test command::tests::test_ping_command ... ok [INFO] [stdout] test message::parser::tests::parse_command_with_prefix ... ok [INFO] [stdout] test message::parser::tests::parse_command_with_argument_following_colon ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 26 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "d12f598d8813e5ac86d04f8cd89f7de92b645bfd155ec7f6db7bc0c0473611db", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d12f598d8813e5ac86d04f8cd89f7de92b645bfd155ec7f6db7bc0c0473611db", kill_on_drop: false }` [INFO] [stdout] d12f598d8813e5ac86d04f8cd89f7de92b645bfd155ec7f6db7bc0c0473611db