[INFO] fetching crate recital 0.3.0...
[INFO] testing recital-0.3.0 against beta-2020-10-09 for beta-1.48-1
[INFO] extracting crate recital 0.3.0 into /workspace/builds/worker-1/source
[INFO] validating manifest of crates.io crate recital 0.3.0 on toolchain beta-2020-10-09
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[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-1/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 32601d4e46c05a1c549693d5146ac41d50a051003ab8175b83634aee6a60d2e6
[INFO] running `Command { std: "docker" "start" "-a" "32601d4e46c05a1c549693d5146ac41d50a051003ab8175b83634aee6a60d2e6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "32601d4e46c05a1c549693d5146ac41d50a051003ab8175b83634aee6a60d2e6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "32601d4e46c05a1c549693d5146ac41d50a051003ab8175b83634aee6a60d2e6", kill_on_drop: false }`
[INFO] [stdout] 32601d4e46c05a1c549693d5146ac41d50a051003ab8175b83634aee6a60d2e6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] c900bab8d810ad86e65334104421c01cb8ba33495e25c09429853f47b44e815b
[INFO] running `Command { std: "docker" "start" "-a" "c900bab8d810ad86e65334104421c01cb8ba33495e25c09429853f47b44e815b", kill_on_drop: false }`
[INFO] [stderr]    Compiling nom v1.2.4
[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]    = note: `#[warn(unused_doc_comments)]` on by default
[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 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 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 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 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 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 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 imports: `Alpha`, `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)]` on by default
[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]    |                 ^^^^^^^^^^ help: use `dyn`: `dyn Constraint`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[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]    |                ^^^^^^^^^^ help: use `dyn`: `dyn Constraint`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 13 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 2.45s
[INFO] running `Command { std: "docker" "inspect" "c900bab8d810ad86e65334104421c01cb8ba33495e25c09429853f47b44e815b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c900bab8d810ad86e65334104421c01cb8ba33495e25c09429853f47b44e815b", kill_on_drop: false }`
[INFO] [stdout] c900bab8d810ad86e65334104421c01cb8ba33495e25c09429853f47b44e815b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b02ac7e154dfe947e428994e6442a721ecc49c841e66cfb71dd6c76af159c227
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "b02ac7e154dfe947e428994e6442a721ecc49c841e66cfb71dd6c76af159c227", kill_on_drop: false }`
[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]    = note: `#[warn(unused_doc_comments)]` on by default
[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 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 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 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 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 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 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 imports: `Alpha`, `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)]` on by default
[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]    |                 ^^^^^^^^^^ help: use `dyn`: `dyn Constraint`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[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]    |                ^^^^^^^^^^ help: use `dyn`: `dyn Constraint`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 13 warnings emitted
[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]    = note: `#[warn(unused_doc_comments)]` on by default
[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 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 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 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 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 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 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 imports: `Alpha`, `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)]` on by default
[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]    |                 ^^^^^^^^^^ help: use `dyn`: `dyn Constraint`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[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]    |                ^^^^^^^^^^ help: use `dyn`: `dyn Constraint`
[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]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn $crate::resolve::Constraint`
[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]     = note: this warning originates in a macro (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]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn $crate::resolve::Constraint`
[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]     = note: this warning originates in a macro (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]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn $crate::resolve::Constraint`
[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]     = note: this warning originates in a macro (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]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn $crate::resolve::Constraint`
[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]     = note: this warning originates in a macro (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]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn $crate::resolve::Constraint`
[INFO] [stdout] ...
[INFO] [stdout] 346 |         let c = constraints!(Or, a, b);
[INFO] [stdout]     |                 ---------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in a macro (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]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn $crate::resolve::Constraint`
[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]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 2.22s
[INFO] running `Command { std: "docker" "inspect" "b02ac7e154dfe947e428994e6442a721ecc49c841e66cfb71dd6c76af159c227", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b02ac7e154dfe947e428994e6442a721ecc49c841e66cfb71dd6c76af159c227", kill_on_drop: false }`
[INFO] [stdout] b02ac7e154dfe947e428994e6442a721ecc49c841e66cfb71dd6c76af159c227
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] ed8fe1791a4e025a11281ba12eb481b5e92401f00976db13b4f4a9e5e81c6a2a
[INFO] running `Command { std: "docker" "start" "-a" "ed8fe1791a4e025a11281ba12eb481b5e92401f00976db13b4f4a9e5e81c6a2a", kill_on_drop: false }`
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/version.rs:215:9
[INFO] [stderr]     |
[INFO] [stderr] 215 |         try!(write!(f, "{}.{}.{}", self.major, self.minor, self.patch));
[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]    --> src/version.rs:232:13
[INFO] [stderr]     |
[INFO] [stderr] 232 |             try!(write!(f, "-{}", join!(self.pre)));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/version.rs:236:13
[INFO] [stderr]     |
[INFO] [stderr] 236 |             try!(write!(f, "+{}", join!(self.build)));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/parser.rs:38:1
[INFO] [stderr]    |
[INFO] [stderr] 38 | /// Parse a string as an `Identifier`.
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/parser.rs:54:1
[INFO] [stderr]    |
[INFO] [stderr] 54 | /// Parses a string of pre-release identifiers into a vector of `Identifier`s.
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/parser.rs:61:1
[INFO] [stderr]    |
[INFO] [stderr] 61 | /// Parses a string of build identifiers into a vector of `Identifier`s.
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/parser.rs:68:1
[INFO] [stderr]    |
[INFO] [stderr] 68 | /// Optionally parse pre-release and build identifiers.
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/parser.rs:75:1
[INFO] [stderr]    |
[INFO] [stderr] 75 | /// Parses a numeric string as a `u64`.
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/parser.rs:85:1
[INFO] [stderr]    |
[INFO] [stderr] 85 | /// Parses a numeric string preceded by a dot (.) as u64.
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/parser.rs:92:1
[INFO] [stderr]    |
[INFO] [stderr] 92 | /// Parse a string as a `Version`.
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Alpha`, `Number`
[INFO] [stderr]   --> src/version.rs:32:24
[INFO] [stderr]    |
[INFO] [stderr] 32 | use self::Identifier::{Alpha, Number};
[INFO] [stderr]    |                        ^^^^^  ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/resolve.rs:92:17
[INFO] [stderr]    |
[INFO] [stderr] 92 |     And(Vec<Box<Constraint>>),
[INFO] [stderr]    |                 ^^^^^^^^^^ help: use `dyn`: `dyn Constraint`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/resolve.rs:95:16
[INFO] [stderr]    |
[INFO] [stderr] 95 |     Or(Vec<Box<Constraint>>),
[INFO] [stderr]    |                ^^^^^^^^^^ help: use `dyn`: `dyn Constraint`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/resolve.rs:156:45
[INFO] [stderr]     |
[INFO] [stderr] 156 |               let mut constraints = Vec::<Box<$crate::resolve::Constraint>>::new();
[INFO] [stderr]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn $crate::resolve::Constraint`
[INFO] [stderr] ...
[INFO] [stderr] 318 |           let a = constraints!(And,
[INFO] [stderr]     |  _________________-
[INFO] [stderr] 319 | |                              GreaterThanOrEqualTo(version!(1, 1, 0)),
[INFO] [stderr] 320 | |                              LessThan(version!(1, 2, 0)));
[INFO] [stderr]     | |_________________________________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/resolve.rs:156:45
[INFO] [stderr]     |
[INFO] [stderr] 156 |               let mut constraints = Vec::<Box<$crate::resolve::Constraint>>::new();
[INFO] [stderr]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn $crate::resolve::Constraint`
[INFO] [stderr] ...
[INFO] [stderr] 328 |           let a = constraints!(Or,
[INFO] [stderr]     |  _________________-
[INFO] [stderr] 329 | |                              Exactly(version!(1, 1, 0)),
[INFO] [stderr] 330 | |                              Exactly(version!(1, 2, 0)));
[INFO] [stderr]     | |________________________________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/resolve.rs:156:45
[INFO] [stderr]     |
[INFO] [stderr] 156 |               let mut constraints = Vec::<Box<$crate::resolve::Constraint>>::new();
[INFO] [stderr]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn $crate::resolve::Constraint`
[INFO] [stderr] ...
[INFO] [stderr] 338 |           let a = constraints!(And,
[INFO] [stderr]     |  _________________-
[INFO] [stderr] 339 | |                              GreaterThanOrEqualTo(version!(1, 2, 1)),
[INFO] [stderr] 340 | |                              LessThan(version!(1, 5, 0)));
[INFO] [stderr]     | |_________________________________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/resolve.rs:156:45
[INFO] [stderr]     |
[INFO] [stderr] 156 |               let mut constraints = Vec::<Box<$crate::resolve::Constraint>>::new();
[INFO] [stderr]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn $crate::resolve::Constraint`
[INFO] [stderr] ...
[INFO] [stderr] 342 |           let b = constraints!(And,
[INFO] [stderr]     |  _________________-
[INFO] [stderr] 343 | |                              GreaterThan(version!(1, 5, 0)),
[INFO] [stderr] 344 | |                              LessThan(version!(2, 0, 0)));
[INFO] [stderr]     | |_________________________________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/resolve.rs:156:45
[INFO] [stderr]     |
[INFO] [stderr] 156 |             let mut constraints = Vec::<Box<$crate::resolve::Constraint>>::new();
[INFO] [stderr]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn $crate::resolve::Constraint`
[INFO] [stderr] ...
[INFO] [stderr] 346 |         let c = constraints!(Or, a, b);
[INFO] [stderr]     |                 ---------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/resolve.rs:156:45
[INFO] [stderr]     |
[INFO] [stderr] 156 |               let mut constraints = Vec::<Box<$crate::resolve::Constraint>>::new();
[INFO] [stderr]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn $crate::resolve::Constraint`
[INFO] [stderr] ...
[INFO] [stderr] 355 |           let c = constraints!(And,
[INFO] [stderr]     |  _________________-
[INFO] [stderr] 356 | |                              GreaterThan(version!(1, 2, 1)),
[INFO] [stderr] 357 | |                              LessThan(version!(2, 0, 0)));
[INFO] [stderr]     | |_________________________________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: 19 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/version.rs:215:9
[INFO] [stderr]     |
[INFO] [stderr] 215 |         try!(write!(f, "{}.{}.{}", self.major, self.minor, self.patch));
[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]    --> src/version.rs:232:13
[INFO] [stderr]     |
[INFO] [stderr] 232 |             try!(write!(f, "-{}", join!(self.pre)));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/version.rs:236:13
[INFO] [stderr]     |
[INFO] [stderr] 236 |             try!(write!(f, "+{}", join!(self.build)));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/parser.rs:38:1
[INFO] [stderr]    |
[INFO] [stderr] 38 | /// Parse a string as an `Identifier`.
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/parser.rs:54:1
[INFO] [stderr]    |
[INFO] [stderr] 54 | /// Parses a string of pre-release identifiers into a vector of `Identifier`s.
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/parser.rs:61:1
[INFO] [stderr]    |
[INFO] [stderr] 61 | /// Parses a string of build identifiers into a vector of `Identifier`s.
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/parser.rs:68:1
[INFO] [stderr]    |
[INFO] [stderr] 68 | /// Optionally parse pre-release and build identifiers.
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/parser.rs:75:1
[INFO] [stderr]    |
[INFO] [stderr] 75 | /// Parses a numeric string as a `u64`.
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/parser.rs:85:1
[INFO] [stderr]    |
[INFO] [stderr] 85 | /// Parses a numeric string preceded by a dot (.) as u64.
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/parser.rs:92:1
[INFO] [stderr]    |
[INFO] [stderr] 92 | /// Parse a string as a `Version`.
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Alpha`, `Number`
[INFO] [stderr]   --> src/version.rs:32:24
[INFO] [stderr]    |
[INFO] [stderr] 32 | use self::Identifier::{Alpha, Number};
[INFO] [stderr]    |                        ^^^^^  ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/resolve.rs:92:17
[INFO] [stderr]    |
[INFO] [stderr] 92 |     And(Vec<Box<Constraint>>),
[INFO] [stderr]    |                 ^^^^^^^^^^ help: use `dyn`: `dyn Constraint`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/resolve.rs:95:16
[INFO] [stderr]    |
[INFO] [stderr] 95 |     Or(Vec<Box<Constraint>>),
[INFO] [stderr]    |                ^^^^^^^^^^ help: use `dyn`: `dyn Constraint`
[INFO] [stderr] 
[INFO] [stderr] warning: 13 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/recital-da1bf6bca3b3a23c
[INFO] [stdout] 
[INFO] [stdout] running 31 tests
[INFO] [stdout] test parser::test::test_build ... ok
[INFO] [stdout] test parser::test::test_from_str ... ok
[INFO] [stdout] test parser::test::test_next_number ... ok
[INFO] [stdout] test parser::test::test_version ... ok
[INFO] [stdout] test resolve::tests::test_greater_than ... ok
[INFO] [stdout] test parser::test::test_identifiers ... ok
[INFO] [stdout] test parser::test::test_is_id_char ... ok
[INFO] [stdout] test parser::test::test_prerelease ... ok
[INFO] [stdout] test resolve::tests::test_less_than ... ok
[INFO] [stdout] test resolve::tests::test_nested ... ok
[INFO] [stdout] test resolve::tests::test_less_than_or_equal_to ... ok
[INFO] [stdout] test resolve::tests::test_or ... ok
[INFO] [stdout] test parser::test::test_number ... ok
[INFO] [stdout] test resolve::tests::test_and ... ok
[INFO] [stdout] test parser::test::test_parse_ids ... ok
[INFO] [stdout] test resolve::tests::test_exact ... ok
[INFO] [stdout] test resolve::tests::test_exactly_not ... ok
[INFO] [stdout] test resolve::tests::test_greater_than_or_equal_to ... ok
[INFO] [stdout] test resolve::tests::test_resolve ... ok
[INFO] [stdout] test version::tests::test_version_increment_patch ... ok
[INFO] [stdout] test version::tests::test_version_increment_minor ... ok
[INFO] [stdout] test parser::test::test_extensions ... ok
[INFO] [stdout] test version::tests::test_identifier_display ... ok
[INFO] [stdout] test version::tests::test_version_is_stable ... ok
[INFO] [stdout] test version::tests::test_version_clear_identifiers ... ok
[INFO] [stdout] test version::tests::test_version_clear_pre ... ok
[INFO] [stdout] test version::tests::test_version_display ... ok
[INFO] [stdout] test version::tests::test_version_default ... ok
[INFO] [stdout] test version::tests::test_version_increment_major ... ok
[INFO] [stdout] test version::tests::test_version_cmp_spec ... ok
[INFO] [stdout] test version::tests::test_version_clear_build ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 31 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests recital
[INFO] [stdout] 
[INFO] [stdout] running 20 tests
[INFO] [stdout] test src/lib.rs - (line 25) ... ok
[INFO] [stdout] test src/lib.rs - (line 55) ... ok
[INFO] [stdout] test src/lib.rs - (line 36) ... ok
[INFO] [stdout] test src/parser.rs - parser::Version (line 115) ... ok
[INFO] [stdout] test src/lib.rs - (line 85) ... ok
[INFO] [stdout] test src/lib.rs - (line 48) ... ok
[INFO] [stdout] test src/resolve.rs - constraints (line 141) ... ok
[INFO] [stdout] test src/resolve.rs - resolve (line 9) ... ok
[INFO] [stdout] test src/resolve.rs - resolve::Operation (line 173) ... ok
[INFO] [stdout] test src/version.rs - id (line 116) ... ok
[INFO] [stdout] test src/resolve.rs - resolve::Constraints (line 69) ... ok
[INFO] [stdout] test src/resolve.rs - resolve (line 24) ... ok
[INFO] [stdout] test src/resolve.rs - resolve::resolve (line 234) ... ok
[INFO] [stdout] test src/resolve.rs - constraints (line 126) ... ok
[INFO] [stdout] test src/version.rs - id (line 127) ... ok
[INFO] [stdout] test src/version.rs - version (line 356) ... ok
[INFO] [stdout] test src/version.rs - version::Version (line 190) ... ok
[INFO] [stdout] test src/version.rs - version (line 7) ... ok
[INFO] [stdout] test src/version.rs - version (line 23) ... ok
[INFO] [stdout] test src/version.rs - version (line 370) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "ed8fe1791a4e025a11281ba12eb481b5e92401f00976db13b4f4a9e5e81c6a2a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ed8fe1791a4e025a11281ba12eb481b5e92401f00976db13b4f4a9e5e81c6a2a", kill_on_drop: false }`
[INFO] [stdout] ed8fe1791a4e025a11281ba12eb481b5e92401f00976db13b4f4a9e5e81c6a2a
