[INFO] cloning repository https://github.com/21aslade/rando-shuffler
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/21aslade/rando-shuffler" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F21aslade%2Frando-shuffler", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F21aslade%2Frando-shuffler'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 43dda7ad76389598a7a610477144de133f8cd492
[INFO] checking 21aslade/rando-shuffler against master#36b21637e93b038453924d3c66821089e71d8baa for pr-143164
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F21aslade%2Frando-shuffler" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/21aslade/rando-shuffler
[INFO] finished tweaking git repo https://github.com/21aslade/rando-shuffler
[INFO] tweaked toml for git repo https://github.com/21aslade/rando-shuffler written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/21aslade/rando-shuffler on toolchain 36b21637e93b038453924d3c66821089e71d8baa
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/21aslade/rando-shuffler already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded version_check v0.9.3
[INFO] [stderr]   Downloaded indexmap v1.7.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 83a163e5a5474f2c2c8baf6b897c1b6a53b3452181fe31bf85c292b8197d5332
[INFO] running `Command { std: "docker" "start" "-a" "83a163e5a5474f2c2c8baf6b897c1b6a53b3452181fe31bf85c292b8197d5332", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "83a163e5a5474f2c2c8baf6b897c1b6a53b3452181fe31bf85c292b8197d5332", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "83a163e5a5474f2c2c8baf6b897c1b6a53b3452181fe31bf85c292b8197d5332", kill_on_drop: false }`
[INFO] [stdout] 83a163e5a5474f2c2c8baf6b897c1b6a53b3452181fe31bf85c292b8197d5332
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9bb72c8040f2dd2e5d59826067dad904768566568da1add849138a0ddb487e27
[INFO] running `Command { std: "docker" "start" "-a" "9bb72c8040f2dd2e5d59826067dad904768566568da1add849138a0ddb487e27", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.4.1
[INFO] [stderr]    Compiling version_check v0.9.3
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]     Checking unicode-width v0.1.9
[INFO] [stderr]     Checking termcolor v1.1.2
[INFO] [stderr]     Checking hashbrown v0.11.2
[INFO] [stderr]     Checking fixedbitset v0.2.0
[INFO] [stderr]     Checking regex-syntax v0.6.25
[INFO] [stderr]     Checking codespan-reporting v0.11.1
[INFO] [stderr]    Compiling indexmap v1.7.0
[INFO] [stderr]    Compiling nom v7.1.0
[INFO] [stderr]     Checking aho-corasick v0.7.18
[INFO] [stderr]     Checking petgraph v0.5.1
[INFO] [stderr]     Checking regex v1.5.4
[INFO] [stderr]     Checking rando_parser v0.1.0 (/opt/rustwide/workdir/rando_parser)
[INFO] [stdout] warning: function `ws` is never used
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn ws<'a: 'b, 'b, F: 'b, O, E: ParseError<&'a str>>(
[INFO] [stdout]    |        ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:16:37
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn relation_name<'a, E>(input: &'a str) -> IResult<&str, &str, E>
[INFO] [stdout]    |                                     ^^                 ----  ---- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                     |                  |
[INFO] [stdout]    |                                     |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                     this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn relation_name<'a, E>(input: &'a str) -> IResult<&'a str, &'a str, E>
[INFO] [stdout]    |                                                         ++       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:23:31
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn keyword<'a, E>(input: &'a str) -> IResult<&str, &str, E>
[INFO] [stdout]    |                               ^^                 ----  ---- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                               |                  |
[INFO] [stdout]    |                               |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                               this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn keyword<'a, E>(input: &'a str) -> IResult<&'a str, &'a str, E>
[INFO] [stdout]    |                                                   ++       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:35:58
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn keyword_unchecked<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&str, &str, E> {
[INFO] [stdout]    |                                                          ^^                 ----  ---- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                          |                  |
[INFO] [stdout]    |                                                          |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                          this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn keyword_unchecked<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stdout]    |                                                                              ++       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:39:34
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn full_ident<'a, E>(input: &'a str) -> IResult<&str, FullIdent<'_>, E>
[INFO] [stdout]    |                                  ^^                 ----            -- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                  |                  |
[INFO] [stdout]    |                                  |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                  this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 39 - pub fn full_ident<'a, E>(input: &'a str) -> IResult<&str, FullIdent<'_>, E>
[INFO] [stdout] 39 + pub fn full_ident<'a, E>(input: &'a str) -> IResult<&'a str, FullIdent<'a>, E>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:49:34
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub fn ident_part<'a, E>(input: &'a str) -> IResult<&str, Ident<'_>, E>
[INFO] [stdout]    |                                  ^^                 ----        -- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                  |                  |
[INFO] [stdout]    |                                  |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                  this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 49 - pub fn ident_part<'a, E>(input: &'a str) -> IResult<&str, Ident<'_>, E>
[INFO] [stdout] 49 + pub fn ident_part<'a, E>(input: &'a str) -> IResult<&'a str, Ident<'a>, E>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |     input: &'a str,
[INFO] [stdout]    |             ^^ this lifetime flows to the output
[INFO] [stdout] 61 | ) -> IResult<&str, Ident<'_>, E> {
[INFO] [stdout]    |              ----        -- the lifetimes get resolved as `'a`
[INFO] [stdout]    |              |
[INFO] [stdout]    |              the lifetimes get resolved as `'a`
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 61 - ) -> IResult<&str, Ident<'_>, E> {
[INFO] [stdout] 61 + ) -> IResult<&'a str, Ident<'a>, E> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:69:53
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn normal_ident<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&str, &str, E> {
[INFO] [stdout]    |                                                     ^^                 ----  ---- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                     |                  |
[INFO] [stdout]    |                                                     |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                     this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn normal_ident<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stdout]    |                                                                         ++       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:73:56
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub fn asciilower1<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&str, &str, E> {
[INFO] [stdout]    |                                                        ^^                 ----  ---- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                        |                  |
[INFO] [stdout]    |                                                        |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub fn asciilower1<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stdout]    |                                                                            ++       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:76:56
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn asciiupper1<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&str, &str, E> {
[INFO] [stdout]    |                                                        ^^                 ----  ---- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                        |                  |
[INFO] [stdout]    |                                                        |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn asciiupper1<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stdout]    |                                                                            ++       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:80:58
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn escaped_ident<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&str, &str, E> {
[INFO] [stdout]    |                                                          ^^                 ----  ---- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                          |                  |
[INFO] [stdout]    |                                                          |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                          this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn escaped_ident<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stdout]    |                                                                              ++       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/descriptor.rs:17:21
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn parse(input: &str) -> Result<HashMap<&str, Vec<RuleDef>>, ParseError<DescriptorError>> {
[INFO] [stdout]    |                     ^^^^                    ----      -------    ---------------------------
[INFO] [stdout]    |                     |                       |         |          |          |
[INFO] [stdout]    |                     |                       |         |          |          the lifetimes get resolved as `'_`
[INFO] [stdout]    |                     |                       |         |          the lifetimes get resolved as `'_`
[INFO] [stdout]    |                     |                       |         the lifetimes get resolved as `'_`
[INFO] [stdout]    |                     |                       the lifetimes get resolved as `'_`
[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] 17 | pub fn parse(input: &str) -> Result<HashMap<&str, Vec<RuleDef<'_>>>, ParseError<'_, DescriptorError<'_>>> {
[INFO] [stdout]    |                                                              ++++               +++                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/descriptor/parser.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 |     full: &'a str,
[INFO] [stdout]    |            ^^ this lifetime flows to the output
[INFO] [stdout] 43 | ) -> Result<HashMap<&str, Vec<RuleDef>>, ParseError<DescriptorError>> {
[INFO] [stdout]    |                     ----      -------    ---------------------------
[INFO] [stdout]    |                     |         |          |          |
[INFO] [stdout]    |                     |         |          |          the lifetimes get resolved as `'a`
[INFO] [stdout]    |                     |         |          the lifetimes get resolved as `'a`
[INFO] [stdout]    |                     |         the lifetimes get resolved as `'a`
[INFO] [stdout]    |                     the lifetimes get resolved as `'a`
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 43 | ) -> Result<HashMap<&'a str, Vec<RuleDef<'a>>>, ParseError<'a, DescriptorError<'a>>> {
[INFO] [stdout]    |                      ++                 ++++               +++                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> rando_parser/src/descriptor/parser.rs:254:18
[INFO] [stdout]     |
[INFO] [stdout] 254 | fn oolean(input: &str) -> ParseResult<Oolean> {
[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] 254 | fn oolean(input: &str) -> ParseResult<'_, Oolean> {
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> rando_parser/src/descriptor/parser.rs:266:22
[INFO] [stdout]     |
[INFO] [stdout] 266 | fn state_body(input: &str) -> ParseResult<StateBody> {
[INFO] [stdout]     |                      ^^^^     ----------------------
[INFO] [stdout]     |                      |        |           |
[INFO] [stdout]     |                      |        |           the lifetimes get resolved as `'_`
[INFO] [stdout]     |                      |        the lifetimes get resolved as `'_`
[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] 266 | fn state_body(input: &str) -> ParseResult<'_, StateBody<'_>> {
[INFO] [stdout]     |                                           +++          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> rando_parser/src/descriptor/parser.rs:293:22
[INFO] [stdout]     |
[INFO] [stdout] 293 | fn value_name(input: &str) -> ParseResult<Value> {
[INFO] [stdout]     |                      ^^^^     ------------------
[INFO] [stdout]     |                      |        |           |
[INFO] [stdout]     |                      |        |           the lifetimes get resolved as `'_`
[INFO] [stdout]     |                      |        the lifetimes get resolved as `'_`
[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] 293 | fn value_name(input: &str) -> ParseResult<'_, Value<'_>> {
[INFO] [stdout]     |                                           +++      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> rando_parser/src/descriptor/parser.rs:298:20
[INFO] [stdout]     |
[INFO] [stdout] 298 | fn variable(input: &str) -> ParseResult<Ident> {
[INFO] [stdout]     |                    ^^^^     ------------------
[INFO] [stdout]     |                    |        |           |
[INFO] [stdout]     |                    |        |           the lifetimes get resolved as `'_`
[INFO] [stdout]     |                    |        the lifetimes get resolved as `'_`
[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] 298 | fn variable(input: &str) -> ParseResult<'_, Ident<'_>> {
[INFO] [stdout]     |                                         +++      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/logic/parser.rs:33:26
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn parse_items(full: &str) -> Result<Vec<Item>, ParseError<LogicParseError>> {
[INFO] [stdout]    |                          ^^^^                ----   ---------------------------
[INFO] [stdout]    |                          |                   |      |          |
[INFO] [stdout]    |                          |                   |      |          the lifetimes get resolved as `'_`
[INFO] [stdout]    |                          |                   |      the lifetimes get resolved as `'_`
[INFO] [stdout]    |                          |                   the lifetimes get resolved as `'_`
[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] 33 | pub fn parse_items(full: &str) -> Result<Vec<Item<'_>>, ParseError<'_, LogicParseError<'_>>> {
[INFO] [stdout]    |                                                  ++++              +++                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> rando_parser/src/logic/parser.rs:179:17
[INFO] [stdout]     |
[INFO] [stdout] 179 | fn arrow(input: &str) -> ParseResult<Arrow> {
[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] 179 | fn arrow(input: &str) -> ParseResult<'_, Arrow> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> rando_parser/src/logic/parser.rs:190:32
[INFO] [stdout]     |
[INFO] [stdout] 190 | pub fn comment_line_end(input: &str) -> ParseResult<Option<&str>> {
[INFO] [stdout]     |                                ^^^^     -------------------------
[INFO] [stdout]     |                                |        |                  |
[INFO] [stdout]     |                                |        |                  the lifetimes get resolved as `'_`
[INFO] [stdout]     |                                |        the lifetimes get resolved as `'_`
[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 | pub fn comment_line_end(input: &str) -> ParseResult<'_, Option<&str>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking rando_core v0.1.0 (/opt/rustwide/workdir/rando_core)
[INFO] [stderr]     Checking rando_shuffler v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `ws` is never used
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn ws<'a: 'b, 'b, F: 'b, O, E: ParseError<&'a str>>(
[INFO] [stdout]    |        ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:16:37
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn relation_name<'a, E>(input: &'a str) -> IResult<&str, &str, E>
[INFO] [stdout]    |                                     ^^                 ----  ---- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                     |                  |
[INFO] [stdout]    |                                     |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                     this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn relation_name<'a, E>(input: &'a str) -> IResult<&'a str, &'a str, E>
[INFO] [stdout]    |                                                         ++       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:23:31
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn keyword<'a, E>(input: &'a str) -> IResult<&str, &str, E>
[INFO] [stdout]    |                               ^^                 ----  ---- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                               |                  |
[INFO] [stdout]    |                               |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                               this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn keyword<'a, E>(input: &'a str) -> IResult<&'a str, &'a str, E>
[INFO] [stdout]    |                                                   ++       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:35:58
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn keyword_unchecked<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&str, &str, E> {
[INFO] [stdout]    |                                                          ^^                 ----  ---- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                          |                  |
[INFO] [stdout]    |                                                          |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                          this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn keyword_unchecked<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stdout]    |                                                                              ++       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:39:34
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn full_ident<'a, E>(input: &'a str) -> IResult<&str, FullIdent<'_>, E>
[INFO] [stdout]    |                                  ^^                 ----            -- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                  |                  |
[INFO] [stdout]    |                                  |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                  this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 39 - pub fn full_ident<'a, E>(input: &'a str) -> IResult<&str, FullIdent<'_>, E>
[INFO] [stdout] 39 + pub fn full_ident<'a, E>(input: &'a str) -> IResult<&'a str, FullIdent<'a>, E>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:49:34
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub fn ident_part<'a, E>(input: &'a str) -> IResult<&str, Ident<'_>, E>
[INFO] [stdout]    |                                  ^^                 ----        -- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                  |                  |
[INFO] [stdout]    |                                  |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                  this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 49 - pub fn ident_part<'a, E>(input: &'a str) -> IResult<&str, Ident<'_>, E>
[INFO] [stdout] 49 + pub fn ident_part<'a, E>(input: &'a str) -> IResult<&'a str, Ident<'a>, E>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |     input: &'a str,
[INFO] [stdout]    |             ^^ this lifetime flows to the output
[INFO] [stdout] 61 | ) -> IResult<&str, Ident<'_>, E> {
[INFO] [stdout]    |              ----        -- the lifetimes get resolved as `'a`
[INFO] [stdout]    |              |
[INFO] [stdout]    |              the lifetimes get resolved as `'a`
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 61 - ) -> IResult<&str, Ident<'_>, E> {
[INFO] [stdout] 61 + ) -> IResult<&'a str, Ident<'a>, E> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:69:53
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn normal_ident<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&str, &str, E> {
[INFO] [stdout]    |                                                     ^^                 ----  ---- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                     |                  |
[INFO] [stdout]    |                                                     |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                     this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn normal_ident<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stdout]    |                                                                         ++       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:73:56
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub fn asciilower1<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&str, &str, E> {
[INFO] [stdout]    |                                                        ^^                 ----  ---- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                        |                  |
[INFO] [stdout]    |                                                        |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub fn asciilower1<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stdout]    |                                                                            ++       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:76:56
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn asciiupper1<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&str, &str, E> {
[INFO] [stdout]    |                                                        ^^                 ----  ---- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                        |                  |
[INFO] [stdout]    |                                                        |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn asciiupper1<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stdout]    |                                                                            ++       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/common/parser.rs:80:58
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn escaped_ident<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&str, &str, E> {
[INFO] [stdout]    |                                                          ^^                 ----  ---- the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                          |                  |
[INFO] [stdout]    |                                                          |                  the lifetimes get resolved as `'a`
[INFO] [stdout]    |                                                          this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn escaped_ident<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&'a str, &'a str, E> {
[INFO] [stdout]    |                                                                              ++       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/descriptor.rs:17:21
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn parse(input: &str) -> Result<HashMap<&str, Vec<RuleDef>>, ParseError<DescriptorError>> {
[INFO] [stdout]    |                     ^^^^                    ----      -------    ---------------------------
[INFO] [stdout]    |                     |                       |         |          |          |
[INFO] [stdout]    |                     |                       |         |          |          the lifetimes get resolved as `'_`
[INFO] [stdout]    |                     |                       |         |          the lifetimes get resolved as `'_`
[INFO] [stdout]    |                     |                       |         the lifetimes get resolved as `'_`
[INFO] [stdout]    |                     |                       the lifetimes get resolved as `'_`
[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] 17 | pub fn parse(input: &str) -> Result<HashMap<&str, Vec<RuleDef<'_>>>, ParseError<'_, DescriptorError<'_>>> {
[INFO] [stdout]    |                                                              ++++               +++                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/descriptor/parser.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 |     full: &'a str,
[INFO] [stdout]    |            ^^ this lifetime flows to the output
[INFO] [stdout] 43 | ) -> Result<HashMap<&str, Vec<RuleDef>>, ParseError<DescriptorError>> {
[INFO] [stdout]    |                     ----      -------    ---------------------------
[INFO] [stdout]    |                     |         |          |          |
[INFO] [stdout]    |                     |         |          |          the lifetimes get resolved as `'a`
[INFO] [stdout]    |                     |         |          the lifetimes get resolved as `'a`
[INFO] [stdout]    |                     |         the lifetimes get resolved as `'a`
[INFO] [stdout]    |                     the lifetimes get resolved as `'a`
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 43 | ) -> Result<HashMap<&'a str, Vec<RuleDef<'a>>>, ParseError<'a, DescriptorError<'a>>> {
[INFO] [stdout]    |                      ++                 ++++               +++                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> rando_parser/src/descriptor/parser.rs:254:18
[INFO] [stdout]     |
[INFO] [stdout] 254 | fn oolean(input: &str) -> ParseResult<Oolean> {
[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] 254 | fn oolean(input: &str) -> ParseResult<'_, Oolean> {
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> rando_parser/src/descriptor/parser.rs:266:22
[INFO] [stdout]     |
[INFO] [stdout] 266 | fn state_body(input: &str) -> ParseResult<StateBody> {
[INFO] [stdout]     |                      ^^^^     ----------------------
[INFO] [stdout]     |                      |        |           |
[INFO] [stdout]     |                      |        |           the lifetimes get resolved as `'_`
[INFO] [stdout]     |                      |        the lifetimes get resolved as `'_`
[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] 266 | fn state_body(input: &str) -> ParseResult<'_, StateBody<'_>> {
[INFO] [stdout]     |                                           +++          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> rando_parser/src/descriptor/parser.rs:293:22
[INFO] [stdout]     |
[INFO] [stdout] 293 | fn value_name(input: &str) -> ParseResult<Value> {
[INFO] [stdout]     |                      ^^^^     ------------------
[INFO] [stdout]     |                      |        |           |
[INFO] [stdout]     |                      |        |           the lifetimes get resolved as `'_`
[INFO] [stdout]     |                      |        the lifetimes get resolved as `'_`
[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] 293 | fn value_name(input: &str) -> ParseResult<'_, Value<'_>> {
[INFO] [stdout]     |                                           +++      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> rando_parser/src/descriptor/parser.rs:298:20
[INFO] [stdout]     |
[INFO] [stdout] 298 | fn variable(input: &str) -> ParseResult<Ident> {
[INFO] [stdout]     |                    ^^^^     ------------------
[INFO] [stdout]     |                    |        |           |
[INFO] [stdout]     |                    |        |           the lifetimes get resolved as `'_`
[INFO] [stdout]     |                    |        the lifetimes get resolved as `'_`
[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] 298 | fn variable(input: &str) -> ParseResult<'_, Ident<'_>> {
[INFO] [stdout]     |                                         +++      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> rando_parser/src/logic/parser.rs:33:26
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn parse_items(full: &str) -> Result<Vec<Item>, ParseError<LogicParseError>> {
[INFO] [stdout]    |                          ^^^^                ----   ---------------------------
[INFO] [stdout]    |                          |                   |      |          |
[INFO] [stdout]    |                          |                   |      |          the lifetimes get resolved as `'_`
[INFO] [stdout]    |                          |                   |      the lifetimes get resolved as `'_`
[INFO] [stdout]    |                          |                   the lifetimes get resolved as `'_`
[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] 33 | pub fn parse_items(full: &str) -> Result<Vec<Item<'_>>, ParseError<'_, LogicParseError<'_>>> {
[INFO] [stdout]    |                                                  ++++              +++                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> rando_parser/src/logic/parser.rs:179:17
[INFO] [stdout]     |
[INFO] [stdout] 179 | fn arrow(input: &str) -> ParseResult<Arrow> {
[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] 179 | fn arrow(input: &str) -> ParseResult<'_, Arrow> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> rando_parser/src/logic/parser.rs:190:32
[INFO] [stdout]     |
[INFO] [stdout] 190 | pub fn comment_line_end(input: &str) -> ParseResult<Option<&str>> {
[INFO] [stdout]     |                                ^^^^     -------------------------
[INFO] [stdout]     |                                |        |                  |
[INFO] [stdout]     |                                |        |                  the lifetimes get resolved as `'_`
[INFO] [stdout]     |                                |        the lifetimes get resolved as `'_`
[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 | pub fn comment_line_end(input: &str) -> ParseResult<'_, Option<&str>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.23s
[INFO] running `Command { std: "docker" "inspect" "9bb72c8040f2dd2e5d59826067dad904768566568da1add849138a0ddb487e27", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9bb72c8040f2dd2e5d59826067dad904768566568da1add849138a0ddb487e27", kill_on_drop: false }`
[INFO] [stdout] 9bb72c8040f2dd2e5d59826067dad904768566568da1add849138a0ddb487e27
