[INFO] fetching crate recital 0.3.0...
[INFO] building recital-0.3.0 against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237-1
[INFO] extracting crate recital 0.3.0 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate recital 0.3.0
[INFO] finished tweaking crates.io crate recital 0.3.0
[INFO] tweaked toml for crates.io crate recital 0.3.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate recital 0.3.0 on toolchain ad85bc524b1ad696e42061ad8338d382dffbdbe5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 1 package to latest compatible version
[INFO] [stderr]       Adding nom v1.2.4 (available: v8.0.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded nom v1.2.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5b2b216b1923084c2c096a84a44c90586fa58364e1f418da0da0a70d168e516c
[INFO] running `Command { std: "docker" "start" "-a" "5b2b216b1923084c2c096a84a44c90586fa58364e1f418da0da0a70d168e516c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5b2b216b1923084c2c096a84a44c90586fa58364e1f418da0da0a70d168e516c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5b2b216b1923084c2c096a84a44c90586fa58364e1f418da0da0a70d168e516c", kill_on_drop: false }`
[INFO] [stdout] 5b2b216b1923084c2c096a84a44c90586fa58364e1f418da0da0a70d168e516c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cb2619461b7aeae476740876815a32c8b4c1a72726ea7e9db41ae8fc152ba10f
[INFO] running `Command { std: "docker" "start" "-a" "cb2619461b7aeae476740876815a32c8b4c1a72726ea7e9db41ae8fc152ba10f", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling nom v1.2.4
[INFO] [stderr]    Compiling recital v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Alpha` and `Number`
[INFO] [stdout]   --> src/version.rs:32:24
[INFO] [stdout]    |
[INFO] [stdout] 32 | use self::Identifier::{Alpha, Number};
[INFO] [stdout]    |                        ^^^^^  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/version.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |         try!(write!(f, "{}.{}.{}", self.major, self.minor, self.patch));
[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]    --> src/version.rs:232:13
[INFO] [stdout]     |
[INFO] [stdout] 232 |             try!(write!(f, "-{}", join!(self.pre)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/version.rs:236:13
[INFO] [stdout]     |
[INFO] [stdout] 236 |             try!(write!(f, "+{}", join!(self.build)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:38:1
[INFO] [stdout]    |
[INFO] [stdout] 38 | /// Parse a string as an `Identifier`.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:39:1
[INFO] [stdout]    |
[INFO] [stdout] 39 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:40:1
[INFO] [stdout]    |
[INFO] [stdout] 40 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 | /// Parses a string of pre-release identifiers into a vector of `Identifier`s.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:55:1
[INFO] [stdout]    |
[INFO] [stdout] 55 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:56:1
[INFO] [stdout]    |
[INFO] [stdout] 56 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:61:1
[INFO] [stdout]    |
[INFO] [stdout] 61 | /// Parses a string of build identifiers into a vector of `Identifier`s.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:62:1
[INFO] [stdout]    |
[INFO] [stdout] 62 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:68:1
[INFO] [stdout]    |
[INFO] [stdout] 68 | /// Optionally parse pre-release and build identifiers.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:69:1
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:70:1
[INFO] [stdout]    |
[INFO] [stdout] 70 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | /// Parses a numeric string as a `u64`.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:77:1
[INFO] [stdout]    |
[INFO] [stdout] 77 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | /// Parses a numeric string preceded by a dot (.) as u64.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:86:1
[INFO] [stdout]    |
[INFO] [stdout] 86 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:87:1
[INFO] [stdout]    |
[INFO] [stdout] 87 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:92:1
[INFO] [stdout]    |
[INFO] [stdout] 92 | /// Parse a string as a `Version`.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:93:1
[INFO] [stdout]    |
[INFO] [stdout] 93 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:94:1
[INFO] [stdout]    |
[INFO] [stdout] 94 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/resolve.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |     And(Vec<Box<Constraint>>),
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 92 |     And(Vec<Box<dyn Constraint>>),
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/resolve.rs:95:16
[INFO] [stdout]    |
[INFO] [stdout] 95 |     Or(Vec<Box<Constraint>>),
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 95 |     Or(Vec<Box<dyn Constraint>>),
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.77s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v1.2.4
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "cb2619461b7aeae476740876815a32c8b4c1a72726ea7e9db41ae8fc152ba10f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cb2619461b7aeae476740876815a32c8b4c1a72726ea7e9db41ae8fc152ba10f", kill_on_drop: false }`
[INFO] [stdout] cb2619461b7aeae476740876815a32c8b4c1a72726ea7e9db41ae8fc152ba10f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 39473366f4c0b603ccb9f9d09c16bd82d1f197819b78ea6234338a73346f35bb
[INFO] running `Command { std: "docker" "start" "-a" "39473366f4c0b603ccb9f9d09c16bd82d1f197819b78ea6234338a73346f35bb", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stdout] warning: unused imports: `Alpha` and `Number`
[INFO] [stdout]   --> src/version.rs:32:24
[INFO] [stdout]    |
[INFO] [stdout] 32 | use self::Identifier::{Alpha, Number};
[INFO] [stdout]    |                        ^^^^^  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling recital v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/version.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |         try!(write!(f, "{}.{}.{}", self.major, self.minor, self.patch));
[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]    --> src/version.rs:232:13
[INFO] [stdout]     |
[INFO] [stdout] 232 |             try!(write!(f, "-{}", join!(self.pre)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/version.rs:236:13
[INFO] [stdout]     |
[INFO] [stdout] 236 |             try!(write!(f, "+{}", join!(self.build)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:38:1
[INFO] [stdout]    |
[INFO] [stdout] 38 | /// Parse a string as an `Identifier`.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:39:1
[INFO] [stdout]    |
[INFO] [stdout] 39 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:40:1
[INFO] [stdout]    |
[INFO] [stdout] 40 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 | /// Parses a string of pre-release identifiers into a vector of `Identifier`s.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:55:1
[INFO] [stdout]    |
[INFO] [stdout] 55 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:56:1
[INFO] [stdout]    |
[INFO] [stdout] 56 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:61:1
[INFO] [stdout]    |
[INFO] [stdout] 61 | /// Parses a string of build identifiers into a vector of `Identifier`s.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:62:1
[INFO] [stdout]    |
[INFO] [stdout] 62 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:68:1
[INFO] [stdout]    |
[INFO] [stdout] 68 | /// Optionally parse pre-release and build identifiers.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:69:1
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:70:1
[INFO] [stdout]    |
[INFO] [stdout] 70 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | /// Parses a numeric string as a `u64`.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:77:1
[INFO] [stdout]    |
[INFO] [stdout] 77 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | /// Parses a numeric string preceded by a dot (.) as u64.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:86:1
[INFO] [stdout]    |
[INFO] [stdout] 86 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:87:1
[INFO] [stdout]    |
[INFO] [stdout] 87 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:92:1
[INFO] [stdout]    |
[INFO] [stdout] 92 | /// Parse a string as a `Version`.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:93:1
[INFO] [stdout]    |
[INFO] [stdout] 93 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:94:1
[INFO] [stdout]    |
[INFO] [stdout] 94 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/resolve.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |     And(Vec<Box<Constraint>>),
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 92 |     And(Vec<Box<dyn Constraint>>),
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/resolve.rs:95:16
[INFO] [stdout]    |
[INFO] [stdout] 95 |     Or(Vec<Box<Constraint>>),
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 95 |     Or(Vec<Box<dyn Constraint>>),
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Alpha` and `Number`
[INFO] [stdout]   --> src/version.rs:32:24
[INFO] [stdout]    |
[INFO] [stdout] 32 | use self::Identifier::{Alpha, Number};
[INFO] [stdout]    |                        ^^^^^  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/version.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |         try!(write!(f, "{}.{}.{}", self.major, self.minor, self.patch));
[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]    --> src/version.rs:232:13
[INFO] [stdout]     |
[INFO] [stdout] 232 |             try!(write!(f, "-{}", join!(self.pre)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/version.rs:236:13
[INFO] [stdout]     |
[INFO] [stdout] 236 |             try!(write!(f, "+{}", join!(self.build)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:38:1
[INFO] [stdout]    |
[INFO] [stdout] 38 | /// Parse a string as an `Identifier`.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:39:1
[INFO] [stdout]    |
[INFO] [stdout] 39 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:40:1
[INFO] [stdout]    |
[INFO] [stdout] 40 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 | /// Parses a string of pre-release identifiers into a vector of `Identifier`s.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:55:1
[INFO] [stdout]    |
[INFO] [stdout] 55 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:56:1
[INFO] [stdout]    |
[INFO] [stdout] 56 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:61:1
[INFO] [stdout]    |
[INFO] [stdout] 61 | /// Parses a string of build identifiers into a vector of `Identifier`s.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:62:1
[INFO] [stdout]    |
[INFO] [stdout] 62 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:68:1
[INFO] [stdout]    |
[INFO] [stdout] 68 | /// Optionally parse pre-release and build identifiers.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:69:1
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:70:1
[INFO] [stdout]    |
[INFO] [stdout] 70 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | /// Parses a numeric string as a `u64`.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:77:1
[INFO] [stdout]    |
[INFO] [stdout] 77 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | /// Parses a numeric string preceded by a dot (.) as u64.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:86:1
[INFO] [stdout]    |
[INFO] [stdout] 86 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:87:1
[INFO] [stdout]    |
[INFO] [stdout] 87 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/parser.rs:92:1
[INFO] [stdout]    |
[INFO] [stdout] 92 | /// Parse a string as a `Version`.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]   --> src/parser.rs:93:1
[INFO] [stdout]    |
[INFO] [stdout] 93 | #[allow(dead_code)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `named`
[INFO] [stdout]   --> src/parser.rs:94:1
[INFO] [stdout]    |
[INFO] [stdout] 94 | named!(
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/resolve.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |     And(Vec<Box<Constraint>>),
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 92 |     And(Vec<Box<dyn Constraint>>),
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/resolve.rs:95:16
[INFO] [stdout]    |
[INFO] [stdout] 95 |     Or(Vec<Box<Constraint>>),
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 95 |     Or(Vec<Box<dyn Constraint>>),
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/resolve.rs:156:45
[INFO] [stdout]     |
[INFO] [stdout] 156 |               let mut constraints = Vec::<Box<$crate::resolve::Constraint>>::new();
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 318 |           let a = constraints!(And,
[INFO] [stdout]     |  _________________-
[INFO] [stdout] 319 | |                              GreaterThanOrEqualTo(version!(1, 1, 0)),
[INFO] [stdout] 320 | |                              LessThan(version!(1, 2, 0)));
[INFO] [stdout]     | |_________________________________________________________- in this macro invocation
[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: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/resolve.rs:156:45
[INFO] [stdout]     |
[INFO] [stdout] 156 |               let mut constraints = Vec::<Box<$crate::resolve::Constraint>>::new();
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 328 |           let a = constraints!(Or,
[INFO] [stdout]     |  _________________-
[INFO] [stdout] 329 | |                              Exactly(version!(1, 1, 0)),
[INFO] [stdout] 330 | |                              Exactly(version!(1, 2, 0)));
[INFO] [stdout]     | |________________________________________________________- in this macro invocation
[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: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/resolve.rs:156:45
[INFO] [stdout]     |
[INFO] [stdout] 156 |               let mut constraints = Vec::<Box<$crate::resolve::Constraint>>::new();
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |           let a = constraints!(And,
[INFO] [stdout]     |  _________________-
[INFO] [stdout] 339 | |                              GreaterThanOrEqualTo(version!(1, 2, 1)),
[INFO] [stdout] 340 | |                              LessThan(version!(1, 5, 0)));
[INFO] [stdout]     | |_________________________________________________________- in this macro invocation
[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: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/resolve.rs:156:45
[INFO] [stdout]     |
[INFO] [stdout] 156 |               let mut constraints = Vec::<Box<$crate::resolve::Constraint>>::new();
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 342 |           let b = constraints!(And,
[INFO] [stdout]     |  _________________-
[INFO] [stdout] 343 | |                              GreaterThan(version!(1, 5, 0)),
[INFO] [stdout] 344 | |                              LessThan(version!(2, 0, 0)));
[INFO] [stdout]     | |_________________________________________________________- in this macro invocation
[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: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/resolve.rs:156:45
[INFO] [stdout]     |
[INFO] [stdout] 156 |             let mut constraints = Vec::<Box<$crate::resolve::Constraint>>::new();
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 346 |         let c = constraints!(Or, a, b);
[INFO] [stdout]     |                 ---------------------- in this macro invocation
[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: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/resolve.rs:156:45
[INFO] [stdout]     |
[INFO] [stdout] 156 |               let mut constraints = Vec::<Box<$crate::resolve::Constraint>>::new();
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 355 |           let c = constraints!(And,
[INFO] [stdout]     |  _________________-
[INFO] [stdout] 356 | |                              GreaterThan(version!(1, 2, 1)),
[INFO] [stdout] 357 | |                              LessThan(version!(2, 0, 0)));
[INFO] [stdout]     | |_________________________________________________________- in this macro invocation
[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: this warning originates in the macro `constraints` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.00s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v1.2.4
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "39473366f4c0b603ccb9f9d09c16bd82d1f197819b78ea6234338a73346f35bb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "39473366f4c0b603ccb9f9d09c16bd82d1f197819b78ea6234338a73346f35bb", kill_on_drop: false }`
[INFO] [stdout] 39473366f4c0b603ccb9f9d09c16bd82d1f197819b78ea6234338a73346f35bb
