[INFO] fetching crate incrementalmerkletree 0.5.0...
[INFO] checking incrementalmerkletree-0.5.0 against master#c2f2db79ca3024f68d22b45aa22b570775c2c4ad for pr-124157
[INFO] extracting crate incrementalmerkletree 0.5.0 into /workspace/builds/worker-6-tc1/source
[INFO] validating manifest of crates.io crate incrementalmerkletree 0.5.0 on toolchain c2f2db79ca3024f68d22b45aa22b570775c2c4ad
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate incrementalmerkletree 0.5.0
[INFO] finished tweaking crates.io crate incrementalmerkletree 0.5.0
[INFO] tweaked toml for crates.io crate incrementalmerkletree 0.5.0 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 40 packages to latest compatible versions
[INFO] [stderr]       Adding linux-raw-sys v0.4.13 (latest: v0.6.4)
[INFO] [stderr]       Adding quick-error v1.2.3 (latest: v2.0.1)
[INFO] [stderr]       Adding wasi v0.11.0+wasi-snapshot-preview1 (latest: v0.13.0+wasi-0.2.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a0a6543081742e69bfa1d7fabcf556d11eb615058ad3f2d4dbc339813a9c9a64
[INFO] running `Command { std: "docker" "start" "-a" "a0a6543081742e69bfa1d7fabcf556d11eb615058ad3f2d4dbc339813a9c9a64", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a0a6543081742e69bfa1d7fabcf556d11eb615058ad3f2d4dbc339813a9c9a64", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a0a6543081742e69bfa1d7fabcf556d11eb615058ad3f2d4dbc339813a9c9a64", kill_on_drop: false }`
[INFO] [stdout] a0a6543081742e69bfa1d7fabcf556d11eb615058ad3f2d4dbc339813a9c9a64
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2ab899780954c795fbcf63eb6ea044ce14fcf11d55a9079414a1d29fc83c4d93
[INFO] running `Command { std: "docker" "start" "-a" "2ab899780954c795fbcf63eb6ea044ce14fcf11d55a9079414a1d29fc83c4d93", kill_on_drop: false }`
[INFO] [stderr]    Compiling libm v0.2.8
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]     Checking wait-timeout v0.2.0
[INFO] [stderr]     Checking bit-set v0.5.3
[INFO] [stderr]     Checking either v1.11.0
[INFO] [stderr]     Checking unarray v0.1.4
[INFO] [stderr]     Checking rand_xorshift v0.3.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking rusty-fork v0.3.0
[INFO] [stderr]     Checking incrementalmerkletree v0.5.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking proptest v1.4.0
[INFO] [stdout] error[E0599]: the method `root` exists for struct `NonEmptyFrontier<String>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:640:29
[INFO] [stdout]     |
[INFO] [stdout] 27  | pub struct NonEmptyFrontier<H> {
[INFO] [stdout]     | ------------------------------ method `root` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 640 |         assert_eq!(frontier.root(None), "a");
[INFO] [stdout]     |                             ^^^^ method cannot be called on `NonEmptyFrontier<String>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:79:9
[INFO] [stdout]     |
[INFO] [stdout] 79  | impl<H: Hashable + Clone> NonEmptyFrontier<H> {
[INFO] [stdout]     |         ^^^^^^^^          -------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `append` exists for struct `NonEmptyFrontier<String>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:642:18
[INFO] [stdout]     |
[INFO] [stdout] 27  | pub struct NonEmptyFrontier<H> {
[INFO] [stdout]     | ------------------------------ method `append` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 642 |         frontier.append("b".to_string());
[INFO] [stdout]     |                  ^^^^^^ method cannot be called on `NonEmptyFrontier<String>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:79:9
[INFO] [stdout]     |
[INFO] [stdout] 79  | impl<H: Hashable + Clone> NonEmptyFrontier<H> {
[INFO] [stdout]     |         ^^^^^^^^          -------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `root` exists for struct `NonEmptyFrontier<String>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:643:29
[INFO] [stdout]     |
[INFO] [stdout] 27  | pub struct NonEmptyFrontier<H> {
[INFO] [stdout]     | ------------------------------ method `root` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 643 |         assert_eq!(frontier.root(None), "ab");
[INFO] [stdout]     |                             ^^^^ method cannot be called on `NonEmptyFrontier<String>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:79:9
[INFO] [stdout]     |
[INFO] [stdout] 79  | impl<H: Hashable + Clone> NonEmptyFrontier<H> {
[INFO] [stdout]     |         ^^^^^^^^          -------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `append` exists for struct `NonEmptyFrontier<String>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:645:18
[INFO] [stdout]     |
[INFO] [stdout] 27  | pub struct NonEmptyFrontier<H> {
[INFO] [stdout]     | ------------------------------ method `append` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 645 |         frontier.append("c".to_string());
[INFO] [stdout]     |                  ^^^^^^ method cannot be called on `NonEmptyFrontier<String>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:79:9
[INFO] [stdout]     |
[INFO] [stdout] 79  | impl<H: Hashable + Clone> NonEmptyFrontier<H> {
[INFO] [stdout]     |         ^^^^^^^^          -------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `root` exists for struct `NonEmptyFrontier<String>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:646:29
[INFO] [stdout]     |
[INFO] [stdout] 27  | pub struct NonEmptyFrontier<H> {
[INFO] [stdout]     | ------------------------------ method `root` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 646 |         assert_eq!(frontier.root(None), "abc_");
[INFO] [stdout]     |                             ^^^^ method cannot be called on `NonEmptyFrontier<String>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:79:9
[INFO] [stdout]     |
[INFO] [stdout] 79  | impl<H: Hashable + Clone> NonEmptyFrontier<H> {
[INFO] [stdout]     |         ^^^^^^^^          -------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `root` exists for struct `Frontier<String, 4>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:659:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub struct Frontier<H, const DEPTH: u8> {
[INFO] [stdout]     | --------------------------------------- method `root` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 659 |         assert_eq!(frontier.root().len(), 16);
[INFO] [stdout]     |                             ^^^^ method cannot be called on `Frontier<String, 4>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 | impl<H: Hashable + Clone, const DEPTH: u8> Frontier<H, DEPTH> {
[INFO] [stdout]     |         ^^^^^^^^                           ------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `root` exists for struct `Frontier<String, 4>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:660:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub struct Frontier<H, const DEPTH: u8> {
[INFO] [stdout]     | --------------------------------------- method `root` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 660 |         assert_eq!(frontier.root(), "________________");
[INFO] [stdout]     |                             ^^^^ method cannot be called on `Frontier<String, 4>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 | impl<H: Hashable + Clone, const DEPTH: u8> Frontier<H, DEPTH> {
[INFO] [stdout]     |         ^^^^^^^^                           ------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `append` exists for struct `Frontier<String, 4>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:662:18
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub struct Frontier<H, const DEPTH: u8> {
[INFO] [stdout]     | --------------------------------------- method `append` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 662 |         frontier.append("a".to_string());
[INFO] [stdout]     |                  ^^^^^^ method cannot be called on `Frontier<String, 4>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 | impl<H: Hashable + Clone, const DEPTH: u8> Frontier<H, DEPTH> {
[INFO] [stdout]     |         ^^^^^^^^                           ------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `root` exists for struct `Frontier<String, 4>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:663:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub struct Frontier<H, const DEPTH: u8> {
[INFO] [stdout]     | --------------------------------------- method `root` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 663 |         assert_eq!(frontier.root(), "a_______________");
[INFO] [stdout]     |                             ^^^^ method cannot be called on `Frontier<String, 4>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 | impl<H: Hashable + Clone, const DEPTH: u8> Frontier<H, DEPTH> {
[INFO] [stdout]     |         ^^^^^^^^                           ------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `append` exists for struct `Frontier<String, 4>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:665:18
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub struct Frontier<H, const DEPTH: u8> {
[INFO] [stdout]     | --------------------------------------- method `append` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 665 |         frontier.append("b".to_string());
[INFO] [stdout]     |                  ^^^^^^ method cannot be called on `Frontier<String, 4>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 | impl<H: Hashable + Clone, const DEPTH: u8> Frontier<H, DEPTH> {
[INFO] [stdout]     |         ^^^^^^^^                           ------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `root` exists for struct `Frontier<String, 4>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:666:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub struct Frontier<H, const DEPTH: u8> {
[INFO] [stdout]     | --------------------------------------- method `root` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 666 |         assert_eq!(frontier.root(), "ab______________");
[INFO] [stdout]     |                             ^^^^ method cannot be called on `Frontier<String, 4>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 | impl<H: Hashable + Clone, const DEPTH: u8> Frontier<H, DEPTH> {
[INFO] [stdout]     |         ^^^^^^^^                           ------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `append` exists for struct `Frontier<String, 4>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:668:18
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub struct Frontier<H, const DEPTH: u8> {
[INFO] [stdout]     | --------------------------------------- method `append` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 668 |         frontier.append("c".to_string());
[INFO] [stdout]     |                  ^^^^^^ method cannot be called on `Frontier<String, 4>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 | impl<H: Hashable + Clone, const DEPTH: u8> Frontier<H, DEPTH> {
[INFO] [stdout]     |         ^^^^^^^^                           ------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `root` exists for struct `Frontier<String, 4>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:669:29
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub struct Frontier<H, const DEPTH: u8> {
[INFO] [stdout]     | --------------------------------------- method `root` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 669 |         assert_eq!(frontier.root(), "abc_____________");
[INFO] [stdout]     |                             ^^^^ method cannot be called on `Frontier<String, 4>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 | impl<H: Hashable + Clone, const DEPTH: u8> Frontier<H, DEPTH> {
[INFO] [stdout]     |         ^^^^^^^^                           ------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `append` exists for struct `NonEmptyFrontier<String>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:676:22
[INFO] [stdout]     |
[INFO] [stdout] 27  | pub struct NonEmptyFrontier<H> {
[INFO] [stdout]     | ------------------------------ method `append` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 676 |             frontier.append(c.to_string());
[INFO] [stdout]     |                      ^^^^^^ method cannot be called on `NonEmptyFrontier<String>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:79:9
[INFO] [stdout]     |
[INFO] [stdout] 79  | impl<H: Hashable + Clone> NonEmptyFrontier<H> {
[INFO] [stdout]     |         ^^^^^^^^          -------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `witness` exists for struct `NonEmptyFrontier<String>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:688:22
[INFO] [stdout]     |
[INFO] [stdout] 27  | pub struct NonEmptyFrontier<H> {
[INFO] [stdout]     | ------------------------------ method `witness` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 688 |             frontier.witness(4, bridge_value_at)
[INFO] [stdout]     |                      ^^^^^^^ method cannot be called on `NonEmptyFrontier<String>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:79:9
[INFO] [stdout]     |
[INFO] [stdout] 79  | impl<H: Hashable + Clone> NonEmptyFrontier<H> {
[INFO] [stdout]     |         ^^^^^^^^          -------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `append` exists for struct `Frontier<String, 4>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:696:22
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub struct Frontier<H, const DEPTH: u8> {
[INFO] [stdout]     | --------------------------------------- method `append` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 696 |             frontier.append(c.to_string());
[INFO] [stdout]     |                      ^^^^^^ method cannot be called on `Frontier<String, 4>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 | impl<H: Hashable + Clone, const DEPTH: u8> Frontier<H, DEPTH> {
[INFO] [stdout]     |         ^^^^^^^^                           ------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `witness` exists for struct `Frontier<String, 4>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/frontier.rs:701:18
[INFO] [stdout]     |
[INFO] [stdout] 181 |   pub struct Frontier<H, const DEPTH: u8> {
[INFO] [stdout]     |   --------------------------------------- method `witness` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 700 | /             frontier
[INFO] [stdout] 701 | |                 .witness(|addr| Some(String::empty_root(addr.level())))
[INFO] [stdout]     | |                 -^^^^^^^ method cannot be called on `Frontier<String, 4>` due to unsatisfied trait bounds
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     | 
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/frontier.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 | impl<H: Hashable + Clone, const DEPTH: u8> Frontier<H, DEPTH> {
[INFO] [stdout]     |         ^^^^^^^^                           ------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `empty_root` found for struct `String` in the current scope
[INFO] [stdout]    --> src/frontier.rs:701:46
[INFO] [stdout]     |
[INFO] [stdout] 701 |                 .witness(|addr| Some(String::empty_root(addr.level())))
[INFO] [stdout]     |                                              ^^^^^^^^^^ function or associated item not found in `String`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `String` consider using one of the following associated functions:
[INFO] [stdout]       String::new
[INFO] [stdout]       String::with_capacity
[INFO] [stdout]       String::try_with_capacity
[INFO] [stdout]       String::from_utf8
[INFO] [stdout]       and 8 others
[INFO] [stdout]    --> /rustc/c2f2db79ca3024f68d22b45aa22b570775c2c4ad/library/alloc/src/string.rs:448:5
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `Hashable` defines an item `empty_root`, perhaps you need to implement it
[INFO] [stdout]    --> src/lib.rs:611:1
[INFO] [stdout]     |
[INFO] [stdout] 611 | pub trait Hashable: fmt::Debug {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `root` exists for struct `MerklePath<String, 3>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:822:25
[INFO] [stdout]     |
[INFO] [stdout] 565 | pub struct MerklePath<H, const DEPTH: u8> {
[INFO] [stdout]     | ----------------------------------------- method `root` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 822 |         assert_eq!(path.root("b".to_string()), "abcdefgh".to_string());
[INFO] [stdout]     |                         ^^^^ method cannot be called on `MerklePath<String, 3>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/lib.rs:593:9
[INFO] [stdout]     |
[INFO] [stdout] 593 | impl<H: Hashable, const DEPTH: u8> MerklePath<H, DEPTH> {
[INFO] [stdout]     |         ^^^^^^^^                   --------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `root` exists for struct `MerklePath<String, 3>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:830:25
[INFO] [stdout]     |
[INFO] [stdout] 565 | pub struct MerklePath<H, const DEPTH: u8> {
[INFO] [stdout]     | ----------------------------------------- method `root` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 830 |         assert_eq!(path.root("c".to_string()), "abcdefgh".to_string());
[INFO] [stdout]     |                         ^^^^ method cannot be called on `MerklePath<String, 3>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `String: Hashable` was not satisfied
[INFO] [stdout]    --> src/lib.rs:593:9
[INFO] [stdout]     |
[INFO] [stdout] 593 | impl<H: Hashable, const DEPTH: u8> MerklePath<H, DEPTH> {
[INFO] [stdout]     |         ^^^^^^^^                   --------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 20 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `incrementalmerkletree` (lib test) due to 21 previous errors
[INFO] running `Command { std: "docker" "inspect" "2ab899780954c795fbcf63eb6ea044ce14fcf11d55a9079414a1d29fc83c4d93", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2ab899780954c795fbcf63eb6ea044ce14fcf11d55a9079414a1d29fc83c4d93", kill_on_drop: false }`
[INFO] [stdout] 2ab899780954c795fbcf63eb6ea044ce14fcf11d55a9079414a1d29fc83c4d93
