[INFO] fetching crate reproto-semver 0.3.36...
[INFO] testing reproto-semver-0.3.36 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate reproto-semver 0.3.36 into /workspace/builds/worker-6-tc1/source
[INFO] started tweaking crates.io crate reproto-semver 0.3.36
[INFO] finished tweaking crates.io crate reproto-semver 0.3.36
[INFO] tweaked toml for crates.io crate reproto-semver 0.3.36 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate reproto-semver 0.3.36 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 7 packages to latest compatible versions
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] 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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5cf7acd80d5fba2856269b4c6d5621cadbfd76adeda8cd6e6ab65636473bb646
[INFO] running `Command { std: "docker" "start" "-a" "5cf7acd80d5fba2856269b4c6d5621cadbfd76adeda8cd6e6ab65636473bb646", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5cf7acd80d5fba2856269b4c6d5621cadbfd76adeda8cd6e6ab65636473bb646", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5cf7acd80d5fba2856269b4c6d5621cadbfd76adeda8cd6e6ab65636473bb646", kill_on_drop: false }`
[INFO] [stdout] 5cf7acd80d5fba2856269b4c6d5621cadbfd76adeda8cd6e6ab65636473bb646
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 10dbc6d824666d0cf0ded4e54d946cd523dc44323d85ce51bf70ef43a54e32ce
[INFO] running `Command { std: "docker" "start" "-a" "10dbc6d824666d0cf0ded4e54d946cd523dc44323d85ce51bf70ef43a54e32ce", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling reproto-semver v0.3.36 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:199:47
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let end = scan_while!(self, start, '0'...'9' | 'A'...'Z' | 'a'...'z');
[INFO] [stdout]     |                                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:199:59
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let end = scan_while!(self, start, '0'...'9' | 'A'...'Z' | 'a'...'z');
[INFO] [stdout]     |                                                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:199:71
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let end = scan_while!(self, start, '0'...'9' | 'A'...'Z' | 'a'...'z');
[INFO] [stdout]     |                                                                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:263:24
[INFO] [stdout]     |
[INFO] [stdout] 263 |                     '0'...'9' | 'a'...'z' | 'A'...'Z' => {
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:263:36
[INFO] [stdout]     |
[INFO] [stdout] 263 |                     '0'...'9' | 'a'...'z' | 'A'...'Z' => {
[INFO] [stdout]     |                                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:263:48
[INFO] [stdout]     |
[INFO] [stdout] 263 |                     '0'...'9' | 'a'...'z' | 'A'...'Z' => {
[INFO] [stdout]     |                                                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             try!(write!(fmt, "*"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:381:21
[INFO] [stdout]     |
[INFO] [stdout] 381 |                     try!(write!(fmt, "{}", pred));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:383:21
[INFO] [stdout]     |
[INFO] [stdout] 383 |                     try!(write!(fmt, ", {}", pred));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:395:32
[INFO] [stdout]     |
[INFO] [stdout] 395 |             Wildcard(Minor) => try!(write!(fmt, "{}.*", self.major)),
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:398:21
[INFO] [stdout]     |
[INFO] [stdout] 398 |                     try!(write!(fmt, "{}.{}.*", self.major, minor))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:400:21
[INFO] [stdout]     |
[INFO] [stdout] 400 |                     try!(write!(fmt, "{}.*.*", self.major))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:404:17
[INFO] [stdout]     |
[INFO] [stdout] 404 |                 try!(write!(fmt, "{}{}", self.op, self.major));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:407:32
[INFO] [stdout]     |
[INFO] [stdout] 407 |                     Some(v) => try!(write!(fmt, ".{}", v)),
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:412:32
[INFO] [stdout]     |
[INFO] [stdout] 412 |                     Some(v) => try!(write!(fmt, ".{}", v)),
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:417:21
[INFO] [stdout]     |
[INFO] [stdout] 417 |                     try!(write!(fmt, "-"));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:422:25
[INFO] [stdout]     |
[INFO] [stdout] 422 |                         try!(write!(fmt, "{}", x));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:420:29
[INFO] [stdout]     |
[INFO] [stdout] 420 | ...                   try!(write!(fmt, "."))
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:435:19
[INFO] [stdout]     |
[INFO] [stdout] 435 |             Ex => try!(write!(fmt, "= ")),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:436:19
[INFO] [stdout]     |
[INFO] [stdout] 436 |             Gt => try!(write!(fmt, "> ")),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:437:21
[INFO] [stdout]     |
[INFO] [stdout] 437 |             GtEq => try!(write!(fmt, ">= ")),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:438:19
[INFO] [stdout]     |
[INFO] [stdout] 438 |             Lt => try!(write!(fmt, "< ")),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:439:21
[INFO] [stdout]     |
[INFO] [stdout] 439 |             LtEq => try!(write!(fmt, "<= ")),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:440:22
[INFO] [stdout]     |
[INFO] [stdout] 440 |             Tilde => try!(write!(fmt, "~")),
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:441:27
[INFO] [stdout]     |
[INFO] [stdout] 441 |             Compatible => try!(write!(fmt, "^")),
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:443:28
[INFO] [stdout]     |
[INFO] [stdout] 443 |             Wildcard(_) => try!(write!(fmt, "")),
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:238:9
[INFO] [stdout]     |
[INFO] [stdout] 238 |         try!(write!(f, "{}.{}.{}", self.major, self.minor, self.patch));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |             try!(write!(f, "-"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:245:17
[INFO] [stdout]     |
[INFO] [stdout] 245 |                 try!(write!(f, "{}", x));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:243:21
[INFO] [stdout]     |
[INFO] [stdout] 243 |                     try!(write!(f, "."))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:249:13
[INFO] [stdout]     |
[INFO] [stdout] 249 |             try!(write!(f, "+"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:254:17
[INFO] [stdout]     |
[INFO] [stdout] 254 |                 try!(write!(f, "{}", x));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:252:21
[INFO] [stdout]     |
[INFO] [stdout] 252 |                     try!(write!(f, "."))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> errors.rs:32:32
[INFO] [stdout]    |
[INFO] [stdout] 32 |             Parser(ref p) => p.description(),
[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]   --> parser.rs:99:31
[INFO] [stdout]    |
[INFO] [stdout] 99 |             Lexer(ref l) => l.description(),
[INFO] [stdout]    |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lexer.rs:158:23
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(input: &str) -> Lexer {
[INFO] [stdout]     |                       ^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(input: &str) -> Lexer<'_> {
[INFO] [stdout]     |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> range.rs:142:25
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn parse(input: &str) -> Result<Range, Error> {
[INFO] [stdout]     |                         ^^^^                   ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn parse(input: &str) -> Result<Range, Error<'_>> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> version.rs:186:27
[INFO] [stdout]     |
[INFO] [stdout] 186 |     pub fn parse(version: &str) -> Result<Version, Error> {
[INFO] [stdout]     |                           ^^^^                     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 186 |     pub fn parse(version: &str) -> Result<Version, Error<'_>> {
[INFO] [stdout]     |                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.50s
[INFO] running `Command { std: "docker" "inspect" "10dbc6d824666d0cf0ded4e54d946cd523dc44323d85ce51bf70ef43a54e32ce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "10dbc6d824666d0cf0ded4e54d946cd523dc44323d85ce51bf70ef43a54e32ce", kill_on_drop: false }`
[INFO] [stdout] 10dbc6d824666d0cf0ded4e54d946cd523dc44323d85ce51bf70ef43a54e32ce
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4537fc1df1a1d2c199f9be6d7937f77344006f5b29f82384f98168d00fe4a72c
[INFO] running `Command { std: "docker" "start" "-a" "4537fc1df1a1d2c199f9be6d7937f77344006f5b29f82384f98168d00fe4a72c", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:199:47
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let end = scan_while!(self, start, '0'...'9' | 'A'...'Z' | 'a'...'z');
[INFO] [stdout]     |                                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:199:59
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let end = scan_while!(self, start, '0'...'9' | 'A'...'Z' | 'a'...'z');
[INFO] [stdout]     |                                                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:199:71
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let end = scan_while!(self, start, '0'...'9' | 'A'...'Z' | 'a'...'z');
[INFO] [stdout]     |                                                                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:263:24
[INFO] [stdout]     |
[INFO] [stdout] 263 |                     '0'...'9' | 'a'...'z' | 'A'...'Z' => {
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:263:36
[INFO] [stdout]     |
[INFO] [stdout] 263 |                     '0'...'9' | 'a'...'z' | 'A'...'Z' => {
[INFO] [stdout]     |                                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:263:48
[INFO] [stdout]     |
[INFO] [stdout] 263 |                     '0'...'9' | 'a'...'z' | 'A'...'Z' => {
[INFO] [stdout]     |                                                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             try!(write!(fmt, "*"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:381:21
[INFO] [stdout]     |
[INFO] [stdout] 381 |                     try!(write!(fmt, "{}", pred));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:383:21
[INFO] [stdout]     |
[INFO] [stdout] 383 |                     try!(write!(fmt, ", {}", pred));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:395:32
[INFO] [stdout]     |
[INFO] [stdout] 395 |             Wildcard(Minor) => try!(write!(fmt, "{}.*", self.major)),
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:398:21
[INFO] [stdout]     |
[INFO] [stdout] 398 |                     try!(write!(fmt, "{}.{}.*", self.major, minor))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:400:21
[INFO] [stdout]     |
[INFO] [stdout] 400 |                     try!(write!(fmt, "{}.*.*", self.major))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:404:17
[INFO] [stdout]     |
[INFO] [stdout] 404 |                 try!(write!(fmt, "{}{}", self.op, self.major));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:407:32
[INFO] [stdout]     |
[INFO] [stdout] 407 |                     Some(v) => try!(write!(fmt, ".{}", v)),
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:412:32
[INFO] [stdout]     |
[INFO] [stdout] 412 |                     Some(v) => try!(write!(fmt, ".{}", v)),
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:417:21
[INFO] [stdout]     |
[INFO] [stdout] 417 |                     try!(write!(fmt, "-"));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:422:25
[INFO] [stdout]     |
[INFO] [stdout] 422 |                         try!(write!(fmt, "{}", x));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:420:29
[INFO] [stdout]     |
[INFO] [stdout] 420 | ...                   try!(write!(fmt, "."))
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:435:19
[INFO] [stdout]     |
[INFO] [stdout] 435 |             Ex => try!(write!(fmt, "= ")),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:436:19
[INFO] [stdout]     |
[INFO] [stdout] 436 |             Gt => try!(write!(fmt, "> ")),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:437:21
[INFO] [stdout]     |
[INFO] [stdout] 437 |             GtEq => try!(write!(fmt, ">= ")),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:438:19
[INFO] [stdout]     |
[INFO] [stdout] 438 |             Lt => try!(write!(fmt, "< ")),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:439:21
[INFO] [stdout]     |
[INFO] [stdout] 439 |             LtEq => try!(write!(fmt, "<= ")),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:440:22
[INFO] [stdout]     |
[INFO] [stdout] 440 |             Tilde => try!(write!(fmt, "~")),
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:441:27
[INFO] [stdout]     |
[INFO] [stdout] 441 |             Compatible => try!(write!(fmt, "^")),
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:443:28
[INFO] [stdout]     |
[INFO] [stdout] 443 |             Wildcard(_) => try!(write!(fmt, "")),
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:238:9
[INFO] [stdout]     |
[INFO] [stdout] 238 |         try!(write!(f, "{}.{}.{}", self.major, self.minor, self.patch));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |             try!(write!(f, "-"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:245:17
[INFO] [stdout]     |
[INFO] [stdout] 245 |                 try!(write!(f, "{}", x));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:243:21
[INFO] [stdout]     |
[INFO] [stdout] 243 |                     try!(write!(f, "."))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:249:13
[INFO] [stdout]     |
[INFO] [stdout] 249 |             try!(write!(f, "+"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:254:17
[INFO] [stdout]     |
[INFO] [stdout] 254 |                 try!(write!(f, "{}", x));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:252:21
[INFO] [stdout]     |
[INFO] [stdout] 252 |                     try!(write!(f, "."))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> errors.rs:32:32
[INFO] [stdout]    |
[INFO] [stdout] 32 |             Parser(ref p) => p.description(),
[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]   --> parser.rs:99:31
[INFO] [stdout]    |
[INFO] [stdout] 99 |             Lexer(ref l) => l.description(),
[INFO] [stdout]    |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lexer.rs:158:23
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(input: &str) -> Lexer {
[INFO] [stdout]     |                       ^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(input: &str) -> Lexer<'_> {
[INFO] [stdout]     |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> range.rs:142:25
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn parse(input: &str) -> Result<Range, Error> {
[INFO] [stdout]     |                         ^^^^                   ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn parse(input: &str) -> Result<Range, Error<'_>> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> version.rs:186:27
[INFO] [stdout]     |
[INFO] [stdout] 186 |     pub fn parse(version: &str) -> Result<Version, Error> {
[INFO] [stdout]     |                           ^^^^                     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 186 |     pub fn parse(version: &str) -> Result<Version, Error<'_>> {
[INFO] [stdout]     |                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling reproto-semver v0.3.36 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:199:47
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let end = scan_while!(self, start, '0'...'9' | 'A'...'Z' | 'a'...'z');
[INFO] [stdout]     |                                               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:199:59
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let end = scan_while!(self, start, '0'...'9' | 'A'...'Z' | 'a'...'z');
[INFO] [stdout]     |                                                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:199:71
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let end = scan_while!(self, start, '0'...'9' | 'A'...'Z' | 'a'...'z');
[INFO] [stdout]     |                                                                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:263:24
[INFO] [stdout]     |
[INFO] [stdout] 263 |                     '0'...'9' | 'a'...'z' | 'A'...'Z' => {
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:263:36
[INFO] [stdout]     |
[INFO] [stdout] 263 |                     '0'...'9' | 'a'...'z' | 'A'...'Z' => {
[INFO] [stdout]     |                                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> lexer.rs:263:48
[INFO] [stdout]     |
[INFO] [stdout] 263 |                     '0'...'9' | 'a'...'z' | 'A'...'Z' => {
[INFO] [stdout]     |                                                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |             try!(write!(fmt, "*"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:381:21
[INFO] [stdout]     |
[INFO] [stdout] 381 |                     try!(write!(fmt, "{}", pred));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:383:21
[INFO] [stdout]     |
[INFO] [stdout] 383 |                     try!(write!(fmt, ", {}", pred));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:395:32
[INFO] [stdout]     |
[INFO] [stdout] 395 |             Wildcard(Minor) => try!(write!(fmt, "{}.*", self.major)),
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:398:21
[INFO] [stdout]     |
[INFO] [stdout] 398 |                     try!(write!(fmt, "{}.{}.*", self.major, minor))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:400:21
[INFO] [stdout]     |
[INFO] [stdout] 400 |                     try!(write!(fmt, "{}.*.*", self.major))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:404:17
[INFO] [stdout]     |
[INFO] [stdout] 404 |                 try!(write!(fmt, "{}{}", self.op, self.major));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:407:32
[INFO] [stdout]     |
[INFO] [stdout] 407 |                     Some(v) => try!(write!(fmt, ".{}", v)),
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:412:32
[INFO] [stdout]     |
[INFO] [stdout] 412 |                     Some(v) => try!(write!(fmt, ".{}", v)),
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:417:21
[INFO] [stdout]     |
[INFO] [stdout] 417 |                     try!(write!(fmt, "-"));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:422:25
[INFO] [stdout]     |
[INFO] [stdout] 422 |                         try!(write!(fmt, "{}", x));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:420:29
[INFO] [stdout]     |
[INFO] [stdout] 420 | ...                   try!(write!(fmt, "."))
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:435:19
[INFO] [stdout]     |
[INFO] [stdout] 435 |             Ex => try!(write!(fmt, "= ")),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:436:19
[INFO] [stdout]     |
[INFO] [stdout] 436 |             Gt => try!(write!(fmt, "> ")),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:437:21
[INFO] [stdout]     |
[INFO] [stdout] 437 |             GtEq => try!(write!(fmt, ">= ")),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:438:19
[INFO] [stdout]     |
[INFO] [stdout] 438 |             Lt => try!(write!(fmt, "< ")),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:439:21
[INFO] [stdout]     |
[INFO] [stdout] 439 |             LtEq => try!(write!(fmt, "<= ")),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:440:22
[INFO] [stdout]     |
[INFO] [stdout] 440 |             Tilde => try!(write!(fmt, "~")),
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:441:27
[INFO] [stdout]     |
[INFO] [stdout] 441 |             Compatible => try!(write!(fmt, "^")),
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> range.rs:443:28
[INFO] [stdout]     |
[INFO] [stdout] 443 |             Wildcard(_) => try!(write!(fmt, "")),
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:238:9
[INFO] [stdout]     |
[INFO] [stdout] 238 |         try!(write!(f, "{}.{}.{}", self.major, self.minor, self.patch));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |             try!(write!(f, "-"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:245:17
[INFO] [stdout]     |
[INFO] [stdout] 245 |                 try!(write!(f, "{}", x));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:243:21
[INFO] [stdout]     |
[INFO] [stdout] 243 |                     try!(write!(f, "."))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:249:13
[INFO] [stdout]     |
[INFO] [stdout] 249 |             try!(write!(f, "+"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:254:17
[INFO] [stdout]     |
[INFO] [stdout] 254 |                 try!(write!(f, "{}", x));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> version.rs:252:21
[INFO] [stdout]     |
[INFO] [stdout] 252 |                     try!(write!(f, "."))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> errors.rs:32:32
[INFO] [stdout]    |
[INFO] [stdout] 32 |             Parser(ref p) => p.description(),
[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]   --> parser.rs:99:31
[INFO] [stdout]    |
[INFO] [stdout] 99 |             Lexer(ref l) => l.description(),
[INFO] [stdout]    |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lexer.rs:158:23
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(input: &str) -> Lexer {
[INFO] [stdout]     |                       ^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn new(input: &str) -> Lexer<'_> {
[INFO] [stdout]     |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lexer.rs:283:19
[INFO] [stdout]     |
[INFO] [stdout] 283 |     fn lex(input: &str) -> Vec<Token> {
[INFO] [stdout]     |                   ^^^^         ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 283 |     fn lex(input: &str) -> Vec<Token<'_>> {
[INFO] [stdout]     |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> range.rs:142:25
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn parse(input: &str) -> Result<Range, Error> {
[INFO] [stdout]     |                         ^^^^                   ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn parse(input: &str) -> Result<Range, Error<'_>> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> version.rs:186:27
[INFO] [stdout]     |
[INFO] [stdout] 186 |     pub fn parse(version: &str) -> Result<Version, Error> {
[INFO] [stdout]     |                           ^^^^                     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 186 |     pub fn parse(version: &str) -> Result<Version, Error<'_>> {
[INFO] [stdout]     |                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> version.rs:808:59
[INFO] [stdout]     |
[INFO] [stdout] 808 |         for (i, &SemverTest(left, right, loose)) in input.into_iter().enumerate() {
[INFO] [stdout]     |                                                           ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]     = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 808 -         for (i, &SemverTest(left, right, loose)) in input.into_iter().enumerate() {
[INFO] [stdout] 808 +         for (i, &SemverTest(left, right, loose)) in input.iter().enumerate() {
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 808 -         for (i, &SemverTest(left, right, loose)) in input.into_iter().enumerate() {
[INFO] [stdout] 808 +         for (i, &SemverTest(left, right, loose)) in IntoIterator::into_iter(input).enumerate() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> version.rs:943:60
[INFO] [stdout]     |
[INFO] [stdout] 943 |         for (i, &SemverTest(req, version, loose)) in input.into_iter().enumerate() {
[INFO] [stdout]     |                                                            ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 943 -         for (i, &SemverTest(req, version, loose)) in input.into_iter().enumerate() {
[INFO] [stdout] 943 +         for (i, &SemverTest(req, version, loose)) in input.iter().enumerate() {
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 943 -         for (i, &SemverTest(req, version, loose)) in input.into_iter().enumerate() {
[INFO] [stdout] 943 +         for (i, &SemverTest(req, version, loose)) in IntoIterator::into_iter(input).enumerate() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.04s
[INFO] running `Command { std: "docker" "inspect" "4537fc1df1a1d2c199f9be6d7937f77344006f5b29f82384f98168d00fe4a72c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4537fc1df1a1d2c199f9be6d7937f77344006f5b29f82384f98168d00fe4a72c", kill_on_drop: false }`
[INFO] [stdout] 4537fc1df1a1d2c199f9be6d7937f77344006f5b29f82384f98168d00fe4a72c
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 3674f137b74503e149641f9fde3dc9795090eded79b22be5aa07c63ff850e80c
[INFO] running `Command { std: "docker" "start" "-a" "3674f137b74503e149641f9fde3dc9795090eded79b22be5aa07c63ff850e80c", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> lexer.rs:199:47
[INFO] [stderr]     |
[INFO] [stderr] 199 |         let end = scan_while!(self, start, '0'...'9' | 'A'...'Z' | 'a'...'z');
[INFO] [stderr]     |                                               ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> lexer.rs:199:59
[INFO] [stderr]     |
[INFO] [stderr] 199 |         let end = scan_while!(self, start, '0'...'9' | 'A'...'Z' | 'a'...'z');
[INFO] [stderr]     |                                                           ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> lexer.rs:199:71
[INFO] [stderr]     |
[INFO] [stderr] 199 |         let end = scan_while!(self, start, '0'...'9' | 'A'...'Z' | 'a'...'z');
[INFO] [stderr]     |                                                                       ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> lexer.rs:263:24
[INFO] [stderr]     |
[INFO] [stderr] 263 |                     '0'...'9' | 'a'...'z' | 'A'...'Z' => {
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> lexer.rs:263:36
[INFO] [stderr]     |
[INFO] [stderr] 263 |                     '0'...'9' | 'a'...'z' | 'A'...'Z' => {
[INFO] [stderr]     |                                    ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> lexer.rs:263:48
[INFO] [stderr]     |
[INFO] [stderr] 263 |                     '0'...'9' | 'a'...'z' | 'A'...'Z' => {
[INFO] [stderr]     |                                                ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:377:13
[INFO] [stderr]     |
[INFO] [stderr] 377 |             try!(write!(fmt, "*"));
[INFO] [stderr]     |             ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:381:21
[INFO] [stderr]     |
[INFO] [stderr] 381 |                     try!(write!(fmt, "{}", pred));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:383:21
[INFO] [stderr]     |
[INFO] [stderr] 383 |                     try!(write!(fmt, ", {}", pred));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:395:32
[INFO] [stderr]     |
[INFO] [stderr] 395 |             Wildcard(Minor) => try!(write!(fmt, "{}.*", self.major)),
[INFO] [stderr]     |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:398:21
[INFO] [stderr]     |
[INFO] [stderr] 398 |                     try!(write!(fmt, "{}.{}.*", self.major, minor))
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:400:21
[INFO] [stderr]     |
[INFO] [stderr] 400 |                     try!(write!(fmt, "{}.*.*", self.major))
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:404:17
[INFO] [stderr]     |
[INFO] [stderr] 404 |                 try!(write!(fmt, "{}{}", self.op, self.major));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:407:32
[INFO] [stderr]     |
[INFO] [stderr] 407 |                     Some(v) => try!(write!(fmt, ".{}", v)),
[INFO] [stderr]     |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:412:32
[INFO] [stderr]     |
[INFO] [stderr] 412 |                     Some(v) => try!(write!(fmt, ".{}", v)),
[INFO] [stderr]     |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:417:21
[INFO] [stderr]     |
[INFO] [stderr] 417 |                     try!(write!(fmt, "-"));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:422:25
[INFO] [stderr]     |
[INFO] [stderr] 422 |                         try!(write!(fmt, "{}", x));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:420:29
[INFO] [stderr]     |
[INFO] [stderr] 420 | ...                   try!(write!(fmt, "."))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:435:19
[INFO] [stderr]     |
[INFO] [stderr] 435 |             Ex => try!(write!(fmt, "= ")),
[INFO] [stderr]     |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:436:19
[INFO] [stderr]     |
[INFO] [stderr] 436 |             Gt => try!(write!(fmt, "> ")),
[INFO] [stderr]     |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:437:21
[INFO] [stderr]     |
[INFO] [stderr] 437 |             GtEq => try!(write!(fmt, ">= ")),
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:438:19
[INFO] [stderr]     |
[INFO] [stderr] 438 |             Lt => try!(write!(fmt, "< ")),
[INFO] [stderr]     |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:439:21
[INFO] [stderr]     |
[INFO] [stderr] 439 |             LtEq => try!(write!(fmt, "<= ")),
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:440:22
[INFO] [stderr]     |
[INFO] [stderr] 440 |             Tilde => try!(write!(fmt, "~")),
[INFO] [stderr]     |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:441:27
[INFO] [stderr]     |
[INFO] [stderr] 441 |             Compatible => try!(write!(fmt, "^")),
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> range.rs:443:28
[INFO] [stderr]     |
[INFO] [stderr] 443 |             Wildcard(_) => try!(write!(fmt, "")),
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> version.rs:238:9
[INFO] [stderr]     |
[INFO] [stderr] 238 |         try!(write!(f, "{}.{}.{}", self.major, self.minor, self.patch));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> version.rs:240:13
[INFO] [stderr]     |
[INFO] [stderr] 240 |             try!(write!(f, "-"));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> version.rs:245:17
[INFO] [stderr]     |
[INFO] [stderr] 245 |                 try!(write!(f, "{}", x));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> version.rs:243:21
[INFO] [stderr]     |
[INFO] [stderr] 243 |                     try!(write!(f, "."))
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> version.rs:249:13
[INFO] [stderr]     |
[INFO] [stderr] 249 |             try!(write!(f, "+"));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> version.rs:254:17
[INFO] [stderr]     |
[INFO] [stderr] 254 |                 try!(write!(f, "{}", x));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> version.rs:252:21
[INFO] [stderr]     |
[INFO] [stderr] 252 |                     try!(write!(f, "."))
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> errors.rs:32:32
[INFO] [stderr]    |
[INFO] [stderr] 32 |             Parser(ref p) => p.description(),
[INFO] [stderr]    |                                ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> parser.rs:99:31
[INFO] [stderr]    |
[INFO] [stderr] 99 |             Lexer(ref l) => l.description(),
[INFO] [stderr]    |                               ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> lexer.rs:158:23
[INFO] [stderr]     |
[INFO] [stderr] 158 |     pub fn new(input: &str) -> Lexer {
[INFO] [stderr]     |                       ^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 158 |     pub fn new(input: &str) -> Lexer<'_> {
[INFO] [stderr]     |                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> range.rs:142:25
[INFO] [stderr]     |
[INFO] [stderr] 142 |     pub fn parse(input: &str) -> Result<Range, Error> {
[INFO] [stderr]     |                         ^^^^                   ^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                         |
[INFO] [stderr]     |                         the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 142 |     pub fn parse(input: &str) -> Result<Range, Error<'_>> {
[INFO] [stderr]     |                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> version.rs:186:27
[INFO] [stderr]     |
[INFO] [stderr] 186 |     pub fn parse(version: &str) -> Result<Version, Error> {
[INFO] [stderr]     |                           ^^^^                     ^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                           |
[INFO] [stderr]     |                           the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 186 |     pub fn parse(version: &str) -> Result<Version, Error<'_>> {
[INFO] [stderr]     |                                                         ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `reproto-semver` (lib) generated 38 warnings (run `cargo fix --lib -p reproto-semver` to apply 9 suggestions)
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> lexer.rs:283:19
[INFO] [stderr]     |
[INFO] [stderr] 283 |     fn lex(input: &str) -> Vec<Token> {
[INFO] [stderr]     |                   ^^^^         ^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                   |
[INFO] [stderr]     |                   the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 283 |     fn lex(input: &str) -> Vec<Token<'_>> {
[INFO] [stderr]     |                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stderr]    --> version.rs:808:59
[INFO] [stderr]     |
[INFO] [stderr] 808 |         for (i, &SemverTest(left, right, loose)) in input.into_iter().enumerate() {
[INFO] [stderr]     |                                                           ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr]     = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 808 -         for (i, &SemverTest(left, right, loose)) in input.into_iter().enumerate() {
[INFO] [stderr] 808 +         for (i, &SemverTest(left, right, loose)) in input.iter().enumerate() {
[INFO] [stderr]     |
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 808 -         for (i, &SemverTest(left, right, loose)) in input.into_iter().enumerate() {
[INFO] [stderr] 808 +         for (i, &SemverTest(left, right, loose)) in IntoIterator::into_iter(input).enumerate() {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stderr]    --> version.rs:943:60
[INFO] [stderr]     |
[INFO] [stderr] 943 |         for (i, &SemverTest(req, version, loose)) in input.into_iter().enumerate() {
[INFO] [stderr]     |                                                            ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 943 -         for (i, &SemverTest(req, version, loose)) in input.into_iter().enumerate() {
[INFO] [stderr] 943 +         for (i, &SemverTest(req, version, loose)) in input.iter().enumerate() {
[INFO] [stderr]     |
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 943 -         for (i, &SemverTest(req, version, loose)) in input.into_iter().enumerate() {
[INFO] [stderr] 943 +         for (i, &SemverTest(req, version, loose)) in IntoIterator::into_iter(input).enumerate() {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `reproto-semver` (lib test) generated 41 warnings (38 duplicates) (run `cargo fix --lib -p reproto-semver --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.09s
[INFO] [stderr]      Running unittests lib.rs (/opt/rustwide/target/debug/deps/reproto_semver-b4e3076fe2476b88)
[INFO] [stdout] 
[INFO] [stdout] running 40 tests
[INFO] [stdout] test lexer::tests::components ... ok
[INFO] [stdout] test lexer::tests::numeric_all_numbers ... ok
[INFO] [stdout] test range::test::test_any ... ok
[INFO] [stdout] test lexer::tests::empty ... ok
[INFO] [stdout] test range::test::test_eq_hash ... ok
[INFO] [stdout] test range::test::test_from_str ... ok
[INFO] [stdout] test range::test::test_ordering ... ok
[INFO] [stdout] test range::test::test_parse_metadata_see_issue_88_see_issue_88 ... ok
[INFO] [stdout] test range::test::test_parsing_default ... ok
[INFO] [stdout] test range::test::test_parsing_greater_than ... ok
[INFO] [stdout] test range::test::test_parsing_less_than ... ok
[INFO] [stdout] test range::test::test_parsing_exact ... ok
[INFO] [stdout] test range::test::test_parsing_tilde ... ok
[INFO] [stdout] test range::test::test_parsing_compatible ... ok
[INFO] [stdout] test range::test::test_multiple ... ok
[INFO] [stdout] test range::test::test_parsing_wildcard ... ok
[INFO] [stdout] test range::test::test_pre ... ok
[INFO] [stdout] test version::tests::test_eq ... ok
[INFO] [stdout] test version::tests::node_semver_range ... ok
[INFO] [stdout] test version::tests::test_from_str ... ok
[INFO] [stdout] test version::tests::test_ge ... ok
[INFO] [stdout] test version::tests::test_gt ... ok
[INFO] [stdout] test version::tests::test_increment_clear_metadata ... ok
[INFO] [stdout] test version::tests::node_semver_comparisons ... ok
[INFO] [stdout] test version::tests::test_increment_keep_prerelease ... ok
[INFO] [stdout] test version::tests::test_increment_major ... ok
[INFO] [stdout] test version::tests::test_increment_minor ... ok
[INFO] [stdout] test version::tests::test_increment_patch ... ok
[INFO] [stdout] test version::tests::test_le ... ok
[INFO] [stdout] test version::tests::test_lt ... ok
[INFO] [stdout] test version::tests::test_ne ... ok
[INFO] [stdout] test version::tests::test_parse ... ok
[INFO] [stdout] test version::tests::test_prerelease_check ... ok
[INFO] [stdout] test version::tests::test_show ... ok
[INFO] [stdout] test version::tests::test_spec_order ... ok
[INFO] [stdout] test version::tests::test_to_string ... ok
[INFO] [stdout] test lexer::tests::is_wildcard ... ok
[INFO] [stdout] test lexer::tests::simple_tokens ... ok
[INFO] [stdout] test lexer::tests::whitespace ... ok
[INFO] [stdout] test range::test::test_cargo3202 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 40 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests reproto_semver
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> lexer.rs:199:47
[INFO] [stderr]     |
[INFO] [stderr] 199 |         let end = scan_while!(self, start, '0'...'9' | 'A'...'Z' | 'a'...'z');
[INFO] [stderr]     |                                               ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> lexer.rs:199:59
[INFO] [stderr]     |
[INFO] [stderr] 199 |         let end = scan_while!(self, start, '0'...'9' | 'A'...'Z' | 'a'...'z');
[INFO] [stderr]     |                                                           ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> lexer.rs:199:71
[INFO] [stderr]     |
[INFO] [stderr] 199 |         let end = scan_while!(self, start, '0'...'9' | 'A'...'Z' | 'a'...'z');
[INFO] [stderr]     |                                                                       ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> lexer.rs:263:24
[INFO] [stderr]     |
[INFO] [stderr] 263 |                     '0'...'9' | 'a'...'z' | 'A'...'Z' => {
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> lexer.rs:263:36
[INFO] [stderr]     |
[INFO] [stderr] 263 |                     '0'...'9' | 'a'...'z' | 'A'...'Z' => {
[INFO] [stderr]     |                                    ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> lexer.rs:263:48
[INFO] [stderr]     |
[INFO] [stderr] 263 |                     '0'...'9' | 'a'...'z' | 'A'...'Z' => {
[INFO] [stderr]     |                                                ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: expected `=`, found `}`
[INFO] [stderr]    --> lib.rs:11:1
[INFO] [stderr]     |
[INFO] [stderr]  11 | / //! Semantic version parsing and comparison.
[INFO] [stderr]  12 | | //!
[INFO] [stderr]  13 | | //! Semantic versioning (see http://semver.org/) is a set of rules for
[INFO] [stderr]  14 | | //! assigning version numbers.
[INFO] [stderr] ...   |
[INFO] [stderr] 157 | | //! 1.2.* := >=1.2.0 <1.3.0
[INFO] [stderr] 158 | | //! ```
[INFO] [stderr]     | |_______^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(rustdoc::invalid_codeblock_attributes)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unknown attribute `should-panic`
[INFO] [stderr]    --> range.rs:112:5
[INFO] [stderr]     |
[INFO] [stderr] 112 | /     /// `parse()` is the main constructor of a `Range`. It takes a string like `"^1.2.3"`
[INFO] [stderr] 113 | |     /// and turns it into a `Range` that matches that particular constraint.
[INFO] [stderr] 114 | |     ///
[INFO] [stderr] 115 | |     /// A `Result` is returned which contains a `Error` if there was a problem parsing the `Range`.
[INFO] [stderr] ...   |
[INFO] [stderr] 140 | |     /// }
[INFO] [stderr] 141 | |     /// ```
[INFO] [stderr]     | |___________^
[INFO] [stderr]     |
[INFO] [stderr]     = help: use `should_panic` to invert the results of this test, so that if passes if it panics and fails if it does not
[INFO] [stderr]     = help: this code block may be skipped during testing, because unknown attributes are treated as markers for code samples written in other programming languages, unless it is also explicitly marked as `rust`
[INFO] [stderr] 
[INFO] [stderr] warning: 8 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test range.rs - range::Range::any (line 103) ... ok
[INFO] [stdout] test range.rs - range::Range::matches (line 174) ... ok
[INFO] [stdout] test range.rs - range::Range::parse (line 119) ... ok
[INFO] [stdout] test range.rs - range::Range::exact (line 157) ... ok
[INFO] [stdout] test lexer.rs - lexer (line 13) ... ok
[INFO] [stdout] test parser.rs - parser (line 8) ... ok
[INFO] [stdout] test parser.rs - parser (line 20) ... ok
[INFO] [stdout] test lexer.rs - lexer (line 28) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.48s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "3674f137b74503e149641f9fde3dc9795090eded79b22be5aa07c63ff850e80c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3674f137b74503e149641f9fde3dc9795090eded79b22be5aa07c63ff850e80c", kill_on_drop: false }`
[INFO] [stdout] 3674f137b74503e149641f9fde3dc9795090eded79b22be5aa07c63ff850e80c
