[INFO] cloning repository https://github.com/faizan689/bbbbbbbbbbb [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/faizan689/bbbbbbbbbbb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffaizan689%2Fbbbbbbbbbbb", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffaizan689%2Fbbbbbbbbbbb'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 1cc4f5f7e771fe3dfc8ec47c677f1613e48b3a4f [INFO] checking faizan689/bbbbbbbbbbb against try#987a165cfab916796a8315782b83ac460a651ce2 for pr-145262 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffaizan689%2Fbbbbbbbbbbb" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/faizan689/bbbbbbbbbbb [INFO] finished tweaking git repo https://github.com/faizan689/bbbbbbbbbbb [INFO] tweaked toml for git repo https://github.com/faizan689/bbbbbbbbbbb written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/faizan689/bbbbbbbbbbb on toolchain 987a165cfab916796a8315782b83ac460a651ce2 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+987a165cfab916796a8315782b83ac460a651ce2" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/faizan689/bbbbbbbbbbb already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+987a165cfab916796a8315782b83ac460a651ce2" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded ic-cdk-macros v0.13.2 [INFO] [stderr] Downloaded candid_derive v0.6.6 [INFO] [stderr] Downloaded ic0 v0.23.0 [INFO] [stderr] Downloaded ic-cdk v0.13.6 [INFO] [stderr] Downloaded candid v0.10.14 [INFO] [stderr] Downloaded ic-cdk-macros v0.9.0 [INFO] [stderr] Downloaded ic-stable-structures v0.6.9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+987a165cfab916796a8315782b83ac460a651ce2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 1a1daf55b17c7754e94a96780cf96e5909b6e35e297fc485d6c3a834d8305c19 [INFO] running `Command { std: "docker" "start" "-a" "1a1daf55b17c7754e94a96780cf96e5909b6e35e297fc485d6c3a834d8305c19", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1a1daf55b17c7754e94a96780cf96e5909b6e35e297fc485d6c3a834d8305c19", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1a1daf55b17c7754e94a96780cf96e5909b6e35e297fc485d6c3a834d8305c19", kill_on_drop: false }` [INFO] [stdout] 1a1daf55b17c7754e94a96780cf96e5909b6e35e297fc485d6c3a834d8305c19 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+987a165cfab916796a8315782b83ac460a651ce2" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 757a8a3c9eef12456c07c2664ceb2f981640b184c9da431ca910ad09149dfb2d [INFO] running `Command { std: "docker" "start" "-a" "757a8a3c9eef12456c07c2664ceb2f981640b184c9da431ca910ad09149dfb2d", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling libc v0.2.174 [INFO] [stderr] Compiling rustversion v1.0.21 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling cfg-if v1.0.1 [INFO] [stderr] Compiling anyhow v1.0.98 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling cc v1.2.27 [INFO] [stderr] Compiling typenum v1.18.0 [INFO] [stderr] Compiling cpufeatures v0.2.17 [INFO] [stderr] Compiling typed-arena v2.0.2 [INFO] [stderr] Compiling crc32fast v1.4.2 [INFO] [stderr] Compiling unicode-width v0.1.14 [INFO] [stderr] Compiling data-encoding v2.9.0 [INFO] [stderr] Compiling arrayvec v0.5.2 [INFO] [stderr] Compiling pretty v0.12.4 [INFO] [stderr] Checking sha2 v0.10.9 [INFO] [stderr] Compiling leb128 v0.2.5 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling ic-cdk-executor v0.1.0 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling syn v2.0.104 [INFO] [stderr] Checking ic0 v0.23.0 [INFO] [stderr] Checking memchr v2.7.5 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling psm v0.1.26 [INFO] [stderr] Compiling stacker v0.1.21 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling candid_derive v0.6.6 [INFO] [stderr] Compiling binread_derive v2.1.0 [INFO] [stderr] Compiling binread v2.2.0 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Checking ic_principal v0.1.1 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Checking serde_bytes v0.11.17 [INFO] [stderr] Checking serde_json v1.0.140 [INFO] [stderr] Checking ic-stable-structures v0.6.9 [INFO] [stderr] Compiling serde_tokenstream v0.1.7 [INFO] [stderr] Checking candid v0.10.14 [INFO] [stderr] Compiling ic-cdk-macros v0.13.2 [INFO] [stderr] Compiling ic-cdk-macros v0.9.0 [INFO] [stderr] Checking ic-cdk v0.13.6 [INFO] [stderr] Checking investment_canister v0.1.0 (/opt/rustwide/workdir/src/investment_canister) [INFO] [stderr] Checking property_canister v0.1.0 (/opt/rustwide/workdir/src/property_canister) [INFO] [stderr] Checking user_canister v0.1.0 (/opt/rustwide/workdir/src/user_canister) [INFO] [stderr] Checking governance_canister v0.1.0 (/opt/rustwide/workdir/src/governance_canister) [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:63:40 [INFO] [stdout] | [INFO] [stdout] 63 | static INVESTMENT_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:69:41 [INFO] [stdout] | [INFO] [stdout] 69 | static TRANSACTION_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:63:32 [INFO] [stdout] | [INFO] [stdout] 63 | static INVESTMENT_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 64 | InvestmentStore::init( [INFO] [stdout] | ^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the function or associated item `init` exists for struct `StableBTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:64:26 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 64 | InvestmentStore::init( [INFO] [stdout] | ^^^^ function or associated item cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:63:59 [INFO] [stdout] | [INFO] [stdout] 63 | static INVESTMENT_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:63:59 [INFO] [stdout] | [INFO] [stdout] 63 | static INVESTMENT_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ___________________________________________________________^ [INFO] [stdout] 64 | | InvestmentStore::init( [INFO] [stdout] 65 | | MEMORY_MANAGER.with(|m| m.borrow().get(MemoryId::new(1))) [INFO] [stdout] 66 | | ) [INFO] [stdout] 67 | | ); [INFO] [stdout] | |_____^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:69:33 [INFO] [stdout] | [INFO] [stdout] 69 | static TRANSACTION_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:63:40 [INFO] [stdout] | [INFO] [stdout] 63 | static INVESTMENT_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:69:41 [INFO] [stdout] | [INFO] [stdout] 69 | static TRANSACTION_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | TransactionStore::init( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the function or associated item `init` exists for struct `StableBTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:70:27 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct Transaction { [INFO] [stdout] | ---------------------- doesn't satisfy `Transaction: Storable` [INFO] [stdout] ... [INFO] [stdout] 70 | TransactionStore::init( [INFO] [stdout] | ^^^^ function or associated item cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Transaction: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:69:61 [INFO] [stdout] | [INFO] [stdout] 69 | static TRANSACTION_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:69:61 [INFO] [stdout] | [INFO] [stdout] 69 | static TRANSACTION_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | _____________________________________________________________^ [INFO] [stdout] 70 | | TransactionStore::init( [INFO] [stdout] 71 | | MEMORY_MANAGER.with(|m| m.borrow().get(MemoryId::new(2))) [INFO] [stdout] 72 | | ) [INFO] [stdout] 73 | | ); [INFO] [stdout] | |_____^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:111:5 [INFO] [stdout] | [INFO] [stdout] 111 | / INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] 112 | | storage.borrow_mut().insert(investment_id, investment.clone()); [INFO] [stdout] 113 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:111:30 [INFO] [stdout] | [INFO] [stdout] 111 | INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:112:30 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 112 | storage.borrow_mut().insert(investment_id, investment.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:152:5 [INFO] [stdout] | [INFO] [stdout] 152 | / TRANSACTION_STORAGE.with(|storage| { [INFO] [stdout] 153 | | storage.borrow_mut().insert(transaction_id, transaction); [INFO] [stdout] 154 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:152:31 [INFO] [stdout] | [INFO] [stdout] 152 | TRANSACTION_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:153:30 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct Transaction { [INFO] [stdout] | ---------------------- doesn't satisfy `Transaction: Storable` [INFO] [stdout] ... [INFO] [stdout] 153 | storage.borrow_mut().insert(transaction_id, transaction); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Transaction: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:161:5 [INFO] [stdout] | [INFO] [stdout] 161 | / INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] 162 | | storage [INFO] [stdout] 163 | | .borrow() [INFO] [stdout] 164 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 167 | | .collect() [INFO] [stdout] 168 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:161:30 [INFO] [stdout] | [INFO] [stdout] 161 | INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:164:14 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 162 | / storage [INFO] [stdout] 163 | | .borrow() [INFO] [stdout] 164 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:173:5 [INFO] [stdout] | [INFO] [stdout] 173 | / INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] 174 | | storage [INFO] [stdout] 175 | | .borrow() [INFO] [stdout] 176 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 179 | | .collect() [INFO] [stdout] 180 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:173:30 [INFO] [stdout] | [INFO] [stdout] 173 | INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:78:38 [INFO] [stdout] | [INFO] [stdout] 78 | static PROPOSAL_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:84:34 [INFO] [stdout] | [INFO] [stdout] 84 | static VOTE_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:176:14 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 174 | / storage [INFO] [stdout] 175 | | .borrow() [INFO] [stdout] 176 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:185:5 [INFO] [stdout] | [INFO] [stdout] 185 | / TRANSACTION_STORAGE.with(|storage| { [INFO] [stdout] 186 | | storage [INFO] [stdout] 187 | | .borrow() [INFO] [stdout] 188 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 191 | | .collect() [INFO] [stdout] 192 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:185:31 [INFO] [stdout] | [INFO] [stdout] 185 | TRANSACTION_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:188:14 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct Transaction { [INFO] [stdout] | ---------------------- doesn't satisfy `Transaction: Storable` [INFO] [stdout] ... [INFO] [stdout] 186 | / storage [INFO] [stdout] 187 | | .borrow() [INFO] [stdout] 188 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Transaction: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:218:5 [INFO] [stdout] | [INFO] [stdout] 218 | / INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] 219 | | let mut storage = storage.borrow_mut(); [INFO] [stdout] 220 | | [INFO] [stdout] 221 | | if let Some(mut investment) = storage.get(&investment_id) { [INFO] [stdout] ... | [INFO] [stdout] 228 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:218:30 [INFO] [stdout] | [INFO] [stdout] 218 | INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:221:47 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 221 | if let Some(mut investment) = storage.get(&investment_id) { [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:223:21 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 223 | storage.insert(investment_id, investment.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:251:5 [INFO] [stdout] | [INFO] [stdout] 251 | / INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] 252 | | storage [INFO] [stdout] 253 | | .borrow() [INFO] [stdout] 254 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 257 | | .sum() [INFO] [stdout] 258 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:251:30 [INFO] [stdout] | [INFO] [stdout] 251 | INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:254:14 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 252 | / storage [INFO] [stdout] 253 | | .borrow() [INFO] [stdout] 254 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:263:5 [INFO] [stdout] | [INFO] [stdout] 263 | / INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] 264 | | storage [INFO] [stdout] 265 | | .borrow() [INFO] [stdout] 266 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 273 | | .sum() [INFO] [stdout] 274 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:263:30 [INFO] [stdout] | [INFO] [stdout] 263 | INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:266:14 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 264 | / storage [INFO] [stdout] 265 | | .borrow() [INFO] [stdout] 266 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:78:38 [INFO] [stdout] | [INFO] [stdout] 78 | static PROPOSAL_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:63:32 [INFO] [stdout] | [INFO] [stdout] 63 | static INVESTMENT_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:84:34 [INFO] [stdout] | [INFO] [stdout] 84 | static VOTE_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:78:30 [INFO] [stdout] | [INFO] [stdout] 78 | static PROPOSAL_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 64 | InvestmentStore::init( [INFO] [stdout] | ^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | ProposalStore::init( [INFO] [stdout] | ^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the function or associated item `init` exists for struct `StableBTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:64:26 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 64 | InvestmentStore::init( [INFO] [stdout] | ^^^^ function or associated item cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the function or associated item `init` exists for struct `StableBTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:79:24 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 79 | ProposalStore::init( [INFO] [stdout] | ^^^^ function or associated item cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:78:55 [INFO] [stdout] | [INFO] [stdout] 78 | static PROPOSAL_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:78:55 [INFO] [stdout] | [INFO] [stdout] 78 | static PROPOSAL_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | _______________________________________________________^ [INFO] [stdout] 79 | | ProposalStore::init( [INFO] [stdout] 80 | | MEMORY_MANAGER.with(|m| m.borrow().get(MemoryId::new(1))) [INFO] [stdout] 81 | | ) [INFO] [stdout] 82 | | ); [INFO] [stdout] | |_____^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:63:59 [INFO] [stdout] | [INFO] [stdout] 63 | static INVESTMENT_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:63:59 [INFO] [stdout] | [INFO] [stdout] 63 | static INVESTMENT_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ___________________________________________________________^ [INFO] [stdout] 64 | | InvestmentStore::init( [INFO] [stdout] 65 | | MEMORY_MANAGER.with(|m| m.borrow().get(MemoryId::new(1))) [INFO] [stdout] 66 | | ) [INFO] [stdout] 67 | | ); [INFO] [stdout] | |_____^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:69:33 [INFO] [stdout] | [INFO] [stdout] 69 | static TRANSACTION_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / thread_local! { [INFO] [stdout] 53 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 54 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 55 | | ); [INFO] [stdout] ... | [INFO] [stdout] 73 | | ); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | TransactionStore::init( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] error[E0599]: the function or associated item `init` exists for struct `StableBTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:70:27 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct Transaction { [INFO] [stdout] | ---------------------- doesn't satisfy `Transaction: Storable` [INFO] [stdout] ... [INFO] [stdout] 70 | TransactionStore::init( [INFO] [stdout] | ^^^^ function or associated item cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Transaction: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:84:26 [INFO] [stdout] | [INFO] [stdout] 84 | static VOTE_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:69:61 [INFO] [stdout] | [INFO] [stdout] 69 | static TRANSACTION_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:69:61 [INFO] [stdout] | [INFO] [stdout] 69 | static TRANSACTION_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | _____________________________________________________________^ [INFO] [stdout] 70 | | TransactionStore::init( [INFO] [stdout] 71 | | MEMORY_MANAGER.with(|m| m.borrow().get(MemoryId::new(2))) [INFO] [stdout] 72 | | ) [INFO] [stdout] 73 | | ); [INFO] [stdout] | |_____^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:111:5 [INFO] [stdout] | [INFO] [stdout] 111 | / INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] 112 | | storage.borrow_mut().insert(investment_id, investment.clone()); [INFO] [stdout] 113 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:111:30 [INFO] [stdout] | [INFO] [stdout] 111 | INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `investment_canister` (lib) due to 45 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:112:30 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 112 | storage.borrow_mut().insert(investment_id, investment.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 85 | VoteStore::init( [INFO] [stdout] | ^^^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:152:5 [INFO] [stdout] | [INFO] [stdout] 152 | / TRANSACTION_STORAGE.with(|storage| { [INFO] [stdout] 153 | | storage.borrow_mut().insert(transaction_id, transaction); [INFO] [stdout] 154 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:152:31 [INFO] [stdout] | [INFO] [stdout] 152 | TRANSACTION_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:153:30 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct Transaction { [INFO] [stdout] | ---------------------- doesn't satisfy `Transaction: Storable` [INFO] [stdout] ... [INFO] [stdout] 153 | storage.borrow_mut().insert(transaction_id, transaction); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Transaction: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the function or associated item `init` exists for struct `StableBTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:85:20 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct Vote { [INFO] [stdout] | --------------- doesn't satisfy `Vote: Storable` [INFO] [stdout] ... [INFO] [stdout] 85 | VoteStore::init( [INFO] [stdout] | ^^^^ function or associated item cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Vote: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:161:5 [INFO] [stdout] | [INFO] [stdout] 161 | / INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] 162 | | storage [INFO] [stdout] 163 | | .borrow() [INFO] [stdout] 164 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 167 | | .collect() [INFO] [stdout] 168 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:84:47 [INFO] [stdout] | [INFO] [stdout] 84 | static VOTE_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:50:34 [INFO] [stdout] | [INFO] [stdout] 50 | static USER_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:161:30 [INFO] [stdout] | [INFO] [stdout] 161 | INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:84:47 [INFO] [stdout] | [INFO] [stdout] 84 | static VOTE_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | _______________________________________________^ [INFO] [stdout] 85 | | VoteStore::init( [INFO] [stdout] 86 | | MEMORY_MANAGER.with(|m| m.borrow().get(MemoryId::new(2))) [INFO] [stdout] 87 | | ) [INFO] [stdout] 88 | | ); [INFO] [stdout] | |_____^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:164:14 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 162 | / storage [INFO] [stdout] 163 | | .borrow() [INFO] [stdout] 164 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:133:5 [INFO] [stdout] | [INFO] [stdout] 133 | / PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] 134 | | storage.borrow_mut().insert(proposal_id, proposal.clone()); [INFO] [stdout] 135 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:173:5 [INFO] [stdout] | [INFO] [stdout] 173 | / INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] 174 | | storage [INFO] [stdout] 175 | | .borrow() [INFO] [stdout] 176 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 179 | | .collect() [INFO] [stdout] 180 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:173:30 [INFO] [stdout] | [INFO] [stdout] 173 | INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:133:28 [INFO] [stdout] | [INFO] [stdout] 133 | PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:176:14 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 174 | / storage [INFO] [stdout] 175 | | .borrow() [INFO] [stdout] 176 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:185:5 [INFO] [stdout] | [INFO] [stdout] 185 | / TRANSACTION_STORAGE.with(|storage| { [INFO] [stdout] 186 | | storage [INFO] [stdout] 187 | | .borrow() [INFO] [stdout] 188 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 191 | | .collect() [INFO] [stdout] 192 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Transaction: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:185:31 [INFO] [stdout] | [INFO] [stdout] 185 | TRANSACTION_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Transaction` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:188:14 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct Transaction { [INFO] [stdout] | ---------------------- doesn't satisfy `Transaction: Storable` [INFO] [stdout] ... [INFO] [stdout] 186 | / storage [INFO] [stdout] 187 | | .borrow() [INFO] [stdout] 188 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Transaction: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:218:5 [INFO] [stdout] | [INFO] [stdout] 218 | / INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] 219 | | let mut storage = storage.borrow_mut(); [INFO] [stdout] 220 | | [INFO] [stdout] 221 | | if let Some(mut investment) = storage.get(&investment_id) { [INFO] [stdout] ... | [INFO] [stdout] 228 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:218:30 [INFO] [stdout] | [INFO] [stdout] 218 | INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:134:30 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 134 | storage.borrow_mut().insert(proposal_id, proposal.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:145:20 [INFO] [stdout] | [INFO] [stdout] 145 | let proposal = PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ____________________^ [INFO] [stdout] 146 | | storage.borrow().get(&req.proposal_id) [INFO] [stdout] 147 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/property_canister/src/lib.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | fn to_bytes(&self) -> Cow<[u8]> { [INFO] [stdout] | ^^^^^ --------- the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 33 | fn to_bytes(&self) -> Cow<'_, [u8]> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:221:47 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 221 | if let Some(mut investment) = storage.get(&investment_id) { [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:50:34 [INFO] [stdout] | [INFO] [stdout] 50 | static USER_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:223:21 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 223 | storage.insert(investment_id, investment.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:145:43 [INFO] [stdout] | [INFO] [stdout] 145 | let proposal = PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:146:26 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 146 | storage.borrow().get(&req.proposal_id) [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:251:5 [INFO] [stdout] | [INFO] [stdout] 251 | / INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] 252 | | storage [INFO] [stdout] 253 | | .borrow() [INFO] [stdout] 254 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 257 | | .sum() [INFO] [stdout] 258 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:251:30 [INFO] [stdout] | [INFO] [stdout] 251 | INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:163:25 [INFO] [stdout] | [INFO] [stdout] 163 | let existing_vote = VOTE_STORAGE.with(|storage| { [INFO] [stdout] | _________________________^ [INFO] [stdout] 164 | | storage [INFO] [stdout] 165 | | .borrow() [INFO] [stdout] 166 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 170 | | .map(|(_, vote)| vote) [INFO] [stdout] 171 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:163:44 [INFO] [stdout] | [INFO] [stdout] 163 | let existing_vote = VOTE_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:254:14 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 252 | / storage [INFO] [stdout] 253 | | .borrow() [INFO] [stdout] 254 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:263:5 [INFO] [stdout] | [INFO] [stdout] 263 | / INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] 264 | | storage [INFO] [stdout] 265 | | .borrow() [INFO] [stdout] 266 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 273 | | .sum() [INFO] [stdout] 274 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Investment: Storable` is not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:263:30 [INFO] [stdout] | [INFO] [stdout] 263 | INVESTMENT_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Investment` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:166:14 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct Vote { [INFO] [stdout] | --------------- doesn't satisfy `Vote: Storable` [INFO] [stdout] ... [INFO] [stdout] 164 | / storage [INFO] [stdout] 165 | | .borrow() [INFO] [stdout] 166 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Vote: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/investment_canister/src/lib.rs:266:14 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Investment { [INFO] [stdout] | --------------------- doesn't satisfy `Investment: Storable` [INFO] [stdout] ... [INFO] [stdout] 264 | / storage [INFO] [stdout] 265 | | .borrow() [INFO] [stdout] 266 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Investment: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:197:5 [INFO] [stdout] | [INFO] [stdout] 197 | / VOTE_STORAGE.with(|storage| { [INFO] [stdout] 198 | | storage.borrow_mut().insert(vote_id, vote.clone()); [INFO] [stdout] 199 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:197:24 [INFO] [stdout] | [INFO] [stdout] 197 | VOTE_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:198:30 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct Vote { [INFO] [stdout] | --------------- doesn't satisfy `Vote: Storable` [INFO] [stdout] ... [INFO] [stdout] 198 | storage.borrow_mut().insert(vote_id, vote.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Vote: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:202:5 [INFO] [stdout] | [INFO] [stdout] 202 | / PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] 203 | | let mut storage = storage.borrow_mut(); [INFO] [stdout] 204 | | if let Some(mut proposal) = storage.get(&req.proposal_id) { [INFO] [stdout] 205 | | if req.vote_choice { [INFO] [stdout] ... | [INFO] [stdout] 214 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:202:28 [INFO] [stdout] | [INFO] [stdout] 202 | PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:204:45 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 204 | if let Some(mut proposal) = storage.get(&req.proposal_id) { [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:212:21 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 212 | storage.insert(req.proposal_id, proposal); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:221:5 [INFO] [stdout] | [INFO] [stdout] 221 | / PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] 222 | | storage [INFO] [stdout] 223 | | .borrow() [INFO] [stdout] 224 | | .iter() [INFO] [stdout] 225 | | .map(|(_, proposal)| proposal) [INFO] [stdout] 226 | | .collect() [INFO] [stdout] 227 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:221:28 [INFO] [stdout] | [INFO] [stdout] 221 | PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:224:14 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 222 | / storage [INFO] [stdout] 223 | | .borrow() [INFO] [stdout] 224 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:233:5 [INFO] [stdout] | [INFO] [stdout] 233 | / PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] 234 | | storage [INFO] [stdout] 235 | | .borrow() [INFO] [stdout] 236 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 241 | | .collect() [INFO] [stdout] 242 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:233:28 [INFO] [stdout] | [INFO] [stdout] 233 | PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:236:14 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 234 | / storage [INFO] [stdout] 235 | | .borrow() [INFO] [stdout] 236 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:247:5 [INFO] [stdout] | [INFO] [stdout] 247 | / PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] 248 | | storage.borrow().get(&proposal_id) [INFO] [stdout] 249 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:247:28 [INFO] [stdout] | [INFO] [stdout] 247 | PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:248:26 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 248 | storage.borrow().get(&proposal_id) [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:254:5 [INFO] [stdout] | [INFO] [stdout] 254 | / PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] 255 | | storage [INFO] [stdout] 256 | | .borrow() [INFO] [stdout] 257 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 260 | | .collect() [INFO] [stdout] 261 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:254:28 [INFO] [stdout] | [INFO] [stdout] 254 | PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:257:14 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 255 | / storage [INFO] [stdout] 256 | | .borrow() [INFO] [stdout] 257 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:266:5 [INFO] [stdout] | [INFO] [stdout] 266 | / VOTE_STORAGE.with(|storage| { [INFO] [stdout] 267 | | storage [INFO] [stdout] 268 | | .borrow() [INFO] [stdout] 269 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 272 | | .collect() [INFO] [stdout] 273 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:266:24 [INFO] [stdout] | [INFO] [stdout] 266 | VOTE_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:269:14 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct Vote { [INFO] [stdout] | --------------- doesn't satisfy `Vote: Storable` [INFO] [stdout] ... [INFO] [stdout] 267 | / storage [INFO] [stdout] 268 | | .borrow() [INFO] [stdout] 269 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Vote: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:278:5 [INFO] [stdout] | [INFO] [stdout] 278 | / VOTE_STORAGE.with(|storage| { [INFO] [stdout] 279 | | storage [INFO] [stdout] 280 | | .borrow() [INFO] [stdout] 281 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 284 | | .collect() [INFO] [stdout] 285 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:278:24 [INFO] [stdout] | [INFO] [stdout] 278 | VOTE_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:281:14 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct Vote { [INFO] [stdout] | --------------- doesn't satisfy `Vote: Storable` [INFO] [stdout] ... [INFO] [stdout] 279 | / storage [INFO] [stdout] 280 | | .borrow() [INFO] [stdout] 281 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Vote: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:290:5 [INFO] [stdout] | [INFO] [stdout] 290 | / PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] 291 | | let mut storage = storage.borrow_mut(); [INFO] [stdout] 292 | | if let Some(mut proposal) = storage.get(&proposal_id) { [INFO] [stdout] 293 | | proposal.status = new_status; [INFO] [stdout] ... | [INFO] [stdout] 299 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:290:28 [INFO] [stdout] | [INFO] [stdout] 290 | PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:292:45 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 292 | if let Some(mut proposal) = storage.get(&proposal_id) { [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:294:21 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 294 | storage.insert(proposal_id, proposal.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:50:26 [INFO] [stdout] | [INFO] [stdout] 50 | static USER_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:45:1 [INFO] [stdout] | [INFO] [stdout] 45 | / thread_local! { [INFO] [stdout] 46 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 47 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 48 | | ); [INFO] [stdout] ... | [INFO] [stdout] 54 | | ); [INFO] [stdout] 55 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:45:1 [INFO] [stdout] | [INFO] [stdout] 45 | / thread_local! { [INFO] [stdout] 46 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 47 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 48 | | ); [INFO] [stdout] ... | [INFO] [stdout] 54 | | ); [INFO] [stdout] 55 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:45:1 [INFO] [stdout] | [INFO] [stdout] 45 | / thread_local! { [INFO] [stdout] 46 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 47 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 48 | | ); [INFO] [stdout] ... | [INFO] [stdout] 54 | | ); [INFO] [stdout] 55 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:45:1 [INFO] [stdout] | [INFO] [stdout] 45 | / thread_local! { [INFO] [stdout] 46 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 47 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 48 | | ); [INFO] [stdout] ... | [INFO] [stdout] 54 | | ); [INFO] [stdout] 55 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | UserStore::init( [INFO] [stdout] | ^^^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `investment_canister` (lib test) due to 45 previous errors [INFO] [stdout] error[E0599]: the function or associated item `init` exists for struct `StableBTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:51:20 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 51 | UserStore::init( [INFO] [stdout] | ^^^^ function or associated item cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:50:47 [INFO] [stdout] | [INFO] [stdout] 50 | static USER_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:50:47 [INFO] [stdout] | [INFO] [stdout] 50 | static USER_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | _______________________________________________^ [INFO] [stdout] 51 | | UserStore::init( [INFO] [stdout] 52 | | MEMORY_MANAGER.with(|m| m.borrow().get(MemoryId::new(0))) [INFO] [stdout] 53 | | ) [INFO] [stdout] 54 | | ); [INFO] [stdout] | |_____^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:78:30 [INFO] [stdout] | [INFO] [stdout] 78 | static PROPOSAL_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:67:25 [INFO] [stdout] | [INFO] [stdout] 67 | let existing_user = USER_STORAGE.with(|storage| { [INFO] [stdout] | _________________________^ [INFO] [stdout] 68 | | storage.borrow().get(&caller) [INFO] [stdout] 69 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:67:44 [INFO] [stdout] | [INFO] [stdout] 67 | let existing_user = USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:50:26 [INFO] [stdout] | [INFO] [stdout] 50 | static USER_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:45:1 [INFO] [stdout] | [INFO] [stdout] 45 | / thread_local! { [INFO] [stdout] 46 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 47 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 48 | | ); [INFO] [stdout] ... | [INFO] [stdout] 54 | | ); [INFO] [stdout] 55 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:45:1 [INFO] [stdout] | [INFO] [stdout] 45 | / thread_local! { [INFO] [stdout] 46 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 47 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 48 | | ); [INFO] [stdout] ... | [INFO] [stdout] 54 | | ); [INFO] [stdout] 55 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:45:1 [INFO] [stdout] | [INFO] [stdout] 45 | / thread_local! { [INFO] [stdout] 46 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 47 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 48 | | ); [INFO] [stdout] ... | [INFO] [stdout] 54 | | ); [INFO] [stdout] 55 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `Ref<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:68:26 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 68 | storage.borrow().get(&caller) [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-16701564052668225823.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:45:1 [INFO] [stdout] | [INFO] [stdout] 45 | / thread_local! { [INFO] [stdout] 46 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 47 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 48 | | ); [INFO] [stdout] ... | [INFO] [stdout] 54 | | ); [INFO] [stdout] 55 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | ProposalStore::init( [INFO] [stdout] | ^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:87:5 [INFO] [stdout] | [INFO] [stdout] 87 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 88 | | storage.borrow_mut().insert(caller, user.clone()); [INFO] [stdout] 89 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | UserStore::init( [INFO] [stdout] | ^^^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:87:24 [INFO] [stdout] | [INFO] [stdout] 87 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:88:30 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 88 | storage.borrow_mut().insert(caller, user.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-15655870634714523712.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the function or associated item `init` exists for struct `StableBTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:51:20 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 51 | UserStore::init( [INFO] [stdout] | ^^^^ function or associated item cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:50:47 [INFO] [stdout] | [INFO] [stdout] 50 | static USER_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:50:47 [INFO] [stdout] | [INFO] [stdout] 50 | static USER_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | _______________________________________________^ [INFO] [stdout] 51 | | UserStore::init( [INFO] [stdout] 52 | | MEMORY_MANAGER.with(|m| m.borrow().get(MemoryId::new(0))) [INFO] [stdout] 53 | | ) [INFO] [stdout] 54 | | ); [INFO] [stdout] | |_____^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 96 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 97 | | storage.borrow().get(&user_principal) [INFO] [stdout] 98 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:96:24 [INFO] [stdout] | [INFO] [stdout] 96 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:67:25 [INFO] [stdout] | [INFO] [stdout] 67 | let existing_user = USER_STORAGE.with(|storage| { [INFO] [stdout] | _________________________^ [INFO] [stdout] 68 | | storage.borrow().get(&caller) [INFO] [stdout] 69 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the function or associated item `init` exists for struct `StableBTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:79:24 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 79 | ProposalStore::init( [INFO] [stdout] | ^^^^ function or associated item cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:78:55 [INFO] [stdout] | [INFO] [stdout] 78 | static PROPOSAL_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:78:55 [INFO] [stdout] | [INFO] [stdout] 78 | static PROPOSAL_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | _______________________________________________________^ [INFO] [stdout] 79 | | ProposalStore::init( [INFO] [stdout] 80 | | MEMORY_MANAGER.with(|m| m.borrow().get(MemoryId::new(1))) [INFO] [stdout] 81 | | ) [INFO] [stdout] 82 | | ); [INFO] [stdout] | |_____^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `Ref<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:97:26 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 97 | storage.borrow().get(&user_principal) [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-16701564052668225823.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:67:44 [INFO] [stdout] | [INFO] [stdout] 67 | let existing_user = USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:109:5 [INFO] [stdout] | [INFO] [stdout] 109 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 110 | | storage [INFO] [stdout] 111 | | .borrow() [INFO] [stdout] 112 | | .iter() [INFO] [stdout] 113 | | .map(|(_, user)| user) [INFO] [stdout] 114 | | .collect() [INFO] [stdout] 115 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:84:26 [INFO] [stdout] | [INFO] [stdout] 84 | static VOTE_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:109:24 [INFO] [stdout] | [INFO] [stdout] 109 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `Ref<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:68:26 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 68 | storage.borrow().get(&caller) [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-2217671771438238380.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:87:5 [INFO] [stdout] | [INFO] [stdout] 87 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 88 | | storage.borrow_mut().insert(caller, user.clone()); [INFO] [stdout] 89 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:87:24 [INFO] [stdout] | [INFO] [stdout] 87 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:112:14 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 110 | / storage [INFO] [stdout] 111 | | .borrow() [INFO] [stdout] 112 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-16701564052668225823.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:120:5 [INFO] [stdout] | [INFO] [stdout] 120 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 121 | | storage [INFO] [stdout] 122 | | .borrow() [INFO] [stdout] 123 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 126 | | .collect() [INFO] [stdout] 127 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:120:24 [INFO] [stdout] | [INFO] [stdout] 120 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:123:14 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 121 | / storage [INFO] [stdout] 122 | | .borrow() [INFO] [stdout] 123 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-16701564052668225823.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | / thread_local! { [INFO] [stdout] 68 | | static MEMORY_MANAGER: RefCell> = RefCell::new( [INFO] [stdout] 69 | | MemoryManager::init(DefaultMemoryImpl::default()) [INFO] [stdout] 70 | | ); [INFO] [stdout] ... | [INFO] [stdout] 88 | | ); [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] = note: this error originates in the macro `$crate::thread::local_impl::thread_local_inner` which comes from the expansion of the macro `thread_local` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 85 | VoteStore::init( [INFO] [stdout] | ^^^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the function or associated item `init` exists for struct `StableBTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:85:20 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct Vote { [INFO] [stdout] | --------------- doesn't satisfy `Vote: Storable` [INFO] [stdout] ... [INFO] [stdout] 85 | VoteStore::init( [INFO] [stdout] | ^^^^ function or associated item cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Vote: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:84:47 [INFO] [stdout] | [INFO] [stdout] 84 | static VOTE_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:84:47 [INFO] [stdout] | [INFO] [stdout] 84 | static VOTE_STORAGE: RefCell = RefCell::new( [INFO] [stdout] | _______________________________________________^ [INFO] [stdout] 85 | | VoteStore::init( [INFO] [stdout] 86 | | MEMORY_MANAGER.with(|m| m.borrow().get(MemoryId::new(2))) [INFO] [stdout] 87 | | ) [INFO] [stdout] 88 | | ); [INFO] [stdout] | |_____^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:133:5 [INFO] [stdout] | [INFO] [stdout] 133 | / PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] 134 | | storage.borrow_mut().insert(proposal_id, proposal.clone()); [INFO] [stdout] 135 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:133:28 [INFO] [stdout] | [INFO] [stdout] 133 | PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:88:30 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 88 | storage.borrow_mut().insert(caller, user.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-11294677962651844808.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:132:5 [INFO] [stdout] | [INFO] [stdout] 132 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 133 | | let mut storage = storage.borrow_mut(); [INFO] [stdout] 134 | | [INFO] [stdout] 135 | | if let Some(mut user) = storage.get(&req.user_principal) { [INFO] [stdout] ... | [INFO] [stdout] 142 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:132:24 [INFO] [stdout] | [INFO] [stdout] 132 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 96 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 97 | | storage.borrow().get(&user_principal) [INFO] [stdout] 98 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:96:24 [INFO] [stdout] | [INFO] [stdout] 96 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:134:30 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 134 | storage.borrow_mut().insert(proposal_id, proposal.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:145:20 [INFO] [stdout] | [INFO] [stdout] 145 | let proposal = PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ____________________^ [INFO] [stdout] 146 | | storage.borrow().get(&req.proposal_id) [INFO] [stdout] 147 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:145:43 [INFO] [stdout] | [INFO] [stdout] 145 | let proposal = PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:135:41 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 135 | if let Some(mut user) = storage.get(&req.user_principal) { [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-6168132138355073251.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `Ref<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:97:26 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 97 | storage.borrow().get(&user_principal) [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-2217671771438238380.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `governance_canister` (lib test) due to 58 previous errors [INFO] [stdout] error[E0599]: the method `get` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:146:26 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 146 | storage.borrow().get(&req.proposal_id) [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/property_canister/src/lib.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | fn to_bytes(&self) -> Cow<[u8]> { [INFO] [stdout] | ^^^^^ --------- the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 33 | fn to_bytes(&self) -> Cow<'_, [u8]> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:109:5 [INFO] [stdout] | [INFO] [stdout] 109 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 110 | | storage [INFO] [stdout] 111 | | .borrow() [INFO] [stdout] 112 | | .iter() [INFO] [stdout] 113 | | .map(|(_, user)| user) [INFO] [stdout] 114 | | .collect() [INFO] [stdout] 115 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:163:25 [INFO] [stdout] | [INFO] [stdout] 163 | let existing_vote = VOTE_STORAGE.with(|storage| { [INFO] [stdout] | _________________________^ [INFO] [stdout] 164 | | storage [INFO] [stdout] 165 | | .borrow() [INFO] [stdout] 166 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 170 | | .map(|(_, vote)| vote) [INFO] [stdout] 171 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:163:44 [INFO] [stdout] | [INFO] [stdout] 163 | let existing_vote = VOTE_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:109:24 [INFO] [stdout] | [INFO] [stdout] 109 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:137:21 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 137 | storage.insert(req.user_principal, user.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-6168132138355073251.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:166:14 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct Vote { [INFO] [stdout] | --------------- doesn't satisfy `Vote: Storable` [INFO] [stdout] ... [INFO] [stdout] 164 | / storage [INFO] [stdout] 165 | | .borrow() [INFO] [stdout] 166 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Vote: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:197:5 [INFO] [stdout] | [INFO] [stdout] 197 | / VOTE_STORAGE.with(|storage| { [INFO] [stdout] 198 | | storage.borrow_mut().insert(vote_id, vote.clone()); [INFO] [stdout] 199 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:112:14 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 110 | / storage [INFO] [stdout] 111 | | .borrow() [INFO] [stdout] 112 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-2217671771438238380.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:149:5 [INFO] [stdout] | [INFO] [stdout] 149 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 150 | | let mut storage = storage.borrow_mut(); [INFO] [stdout] 151 | | [INFO] [stdout] 152 | | if let Some(mut user) = storage.get(&caller) { [INFO] [stdout] ... | [INFO] [stdout] 160 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:149:24 [INFO] [stdout] | [INFO] [stdout] 149 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:197:24 [INFO] [stdout] | [INFO] [stdout] 197 | VOTE_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:120:5 [INFO] [stdout] | [INFO] [stdout] 120 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 121 | | storage [INFO] [stdout] 122 | | .borrow() [INFO] [stdout] 123 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 126 | | .collect() [INFO] [stdout] 127 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:120:24 [INFO] [stdout] | [INFO] [stdout] 120 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:198:30 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct Vote { [INFO] [stdout] | --------------- doesn't satisfy `Vote: Storable` [INFO] [stdout] ... [INFO] [stdout] 198 | storage.borrow_mut().insert(vote_id, vote.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Vote: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:202:5 [INFO] [stdout] | [INFO] [stdout] 202 | / PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] 203 | | let mut storage = storage.borrow_mut(); [INFO] [stdout] 204 | | if let Some(mut proposal) = storage.get(&req.proposal_id) { [INFO] [stdout] 205 | | if req.vote_choice { [INFO] [stdout] ... | [INFO] [stdout] 214 | | }); [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:202:28 [INFO] [stdout] | [INFO] [stdout] 202 | PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:152:41 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 152 | if let Some(mut user) = storage.get(&caller) { [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-6168132138355073251.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:204:45 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 204 | if let Some(mut proposal) = storage.get(&req.proposal_id) { [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:123:14 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 121 | / storage [INFO] [stdout] 122 | | .borrow() [INFO] [stdout] 123 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-2217671771438238380.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:132:5 [INFO] [stdout] | [INFO] [stdout] 132 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 133 | | let mut storage = storage.borrow_mut(); [INFO] [stdout] 134 | | [INFO] [stdout] 135 | | if let Some(mut user) = storage.get(&req.user_principal) { [INFO] [stdout] ... | [INFO] [stdout] 142 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:132:24 [INFO] [stdout] | [INFO] [stdout] 132 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:212:21 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 212 | storage.insert(req.proposal_id, proposal); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:221:5 [INFO] [stdout] | [INFO] [stdout] 221 | / PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] 222 | | storage [INFO] [stdout] 223 | | .borrow() [INFO] [stdout] 224 | | .iter() [INFO] [stdout] 225 | | .map(|(_, proposal)| proposal) [INFO] [stdout] 226 | | .collect() [INFO] [stdout] 227 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:221:28 [INFO] [stdout] | [INFO] [stdout] 221 | PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:155:21 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 155 | storage.insert(caller, user.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-6168132138355073251.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:165:5 [INFO] [stdout] | [INFO] [stdout] 165 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 166 | | let mut storage = storage.borrow_mut(); [INFO] [stdout] 167 | | [INFO] [stdout] 168 | | if let Some(mut user) = storage.get(&req.user_principal) { [INFO] [stdout] ... | [INFO] [stdout] 176 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:224:14 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 222 | / storage [INFO] [stdout] 223 | | .borrow() [INFO] [stdout] 224 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:233:5 [INFO] [stdout] | [INFO] [stdout] 233 | / PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] 234 | | storage [INFO] [stdout] 235 | | .borrow() [INFO] [stdout] 236 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 241 | | .collect() [INFO] [stdout] 242 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:135:41 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 135 | if let Some(mut user) = storage.get(&req.user_principal) { [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-2893603663917079280.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:233:28 [INFO] [stdout] | [INFO] [stdout] 233 | PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:165:24 [INFO] [stdout] | [INFO] [stdout] 165 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:236:14 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 234 | / storage [INFO] [stdout] 235 | | .borrow() [INFO] [stdout] 236 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:247:5 [INFO] [stdout] | [INFO] [stdout] 247 | / PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] 248 | | storage.borrow().get(&proposal_id) [INFO] [stdout] 249 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:247:28 [INFO] [stdout] | [INFO] [stdout] 247 | PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:248:26 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 248 | storage.borrow().get(&proposal_id) [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:254:5 [INFO] [stdout] | [INFO] [stdout] 254 | / PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] 255 | | storage [INFO] [stdout] 256 | | .borrow() [INFO] [stdout] 257 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 260 | | .collect() [INFO] [stdout] 261 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:254:28 [INFO] [stdout] | [INFO] [stdout] 254 | PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:168:41 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 168 | if let Some(mut user) = storage.get(&req.user_principal) { [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-6168132138355073251.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:257:14 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 255 | / storage [INFO] [stdout] 256 | | .borrow() [INFO] [stdout] 257 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:266:5 [INFO] [stdout] | [INFO] [stdout] 266 | / VOTE_STORAGE.with(|storage| { [INFO] [stdout] 267 | | storage [INFO] [stdout] 268 | | .borrow() [INFO] [stdout] 269 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 272 | | .collect() [INFO] [stdout] 273 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:266:24 [INFO] [stdout] | [INFO] [stdout] 266 | VOTE_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:137:21 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 137 | storage.insert(req.user_principal, user.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-2893603663917079280.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:269:14 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct Vote { [INFO] [stdout] | --------------- doesn't satisfy `Vote: Storable` [INFO] [stdout] ... [INFO] [stdout] 267 | / storage [INFO] [stdout] 268 | | .borrow() [INFO] [stdout] 269 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Vote: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:278:5 [INFO] [stdout] | [INFO] [stdout] 278 | / VOTE_STORAGE.with(|storage| { [INFO] [stdout] 279 | | storage [INFO] [stdout] 280 | | .borrow() [INFO] [stdout] 281 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 284 | | .collect() [INFO] [stdout] 285 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vote: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:278:24 [INFO] [stdout] | [INFO] [stdout] 278 | VOTE_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Vote` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:149:5 [INFO] [stdout] | [INFO] [stdout] 149 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 150 | | let mut storage = storage.borrow_mut(); [INFO] [stdout] 151 | | [INFO] [stdout] 152 | | if let Some(mut user) = storage.get(&caller) { [INFO] [stdout] ... | [INFO] [stdout] 160 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:149:24 [INFO] [stdout] | [INFO] [stdout] 149 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:171:21 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 171 | storage.insert(req.user_principal, user.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-6168132138355073251.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:281:14 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct Vote { [INFO] [stdout] | --------------- doesn't satisfy `Vote: Storable` [INFO] [stdout] ... [INFO] [stdout] 279 | / storage [INFO] [stdout] 280 | | .borrow() [INFO] [stdout] 281 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Vote: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:181:5 [INFO] [stdout] | [INFO] [stdout] 181 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 182 | | let mut storage = storage.borrow_mut(); [INFO] [stdout] 183 | | [INFO] [stdout] 184 | | if let Some(mut user) = storage.get(&user_principal) { [INFO] [stdout] ... | [INFO] [stdout] 191 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:181:24 [INFO] [stdout] | [INFO] [stdout] 181 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:290:5 [INFO] [stdout] | [INFO] [stdout] 290 | / PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] 291 | | let mut storage = storage.borrow_mut(); [INFO] [stdout] 292 | | if let Some(mut proposal) = storage.get(&proposal_id) { [INFO] [stdout] 293 | | proposal.status = new_status; [INFO] [stdout] ... | [INFO] [stdout] 299 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Proposal: Storable` is not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:290:28 [INFO] [stdout] | [INFO] [stdout] 290 | PROPOSAL_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `Proposal` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:292:45 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 292 | if let Some(mut proposal) = storage.get(&proposal_id) { [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:152:41 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 152 | if let Some(mut user) = storage.get(&caller) { [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-2893603663917079280.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, StableBTreeMap>>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/governance_canister/src/lib.rs:294:21 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Proposal { [INFO] [stdout] | ------------------- doesn't satisfy `Proposal: Storable` [INFO] [stdout] ... [INFO] [stdout] 294 | storage.insert(proposal_id, proposal.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Proposal: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:184:41 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 184 | if let Some(mut user) = storage.get(&user_principal) { [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-6168132138355073251.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:155:21 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 155 | storage.insert(caller, user.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-2893603663917079280.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:186:21 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 186 | storage.insert(user_principal, user.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-6168132138355073251.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:165:5 [INFO] [stdout] | [INFO] [stdout] 165 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 166 | | let mut storage = storage.borrow_mut(); [INFO] [stdout] 167 | | [INFO] [stdout] 168 | | if let Some(mut user) = storage.get(&req.user_principal) { [INFO] [stdout] ... | [INFO] [stdout] 176 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:165:24 [INFO] [stdout] | [INFO] [stdout] 165 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:196:5 [INFO] [stdout] | [INFO] [stdout] 196 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 197 | | storage [INFO] [stdout] 198 | | .borrow() [INFO] [stdout] 199 | | .iter() [INFO] [stdout] 200 | | .find(|(_, user)| user.email == email) [INFO] [stdout] 201 | | .map(|(_, user)| user) [INFO] [stdout] 202 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:196:24 [INFO] [stdout] | [INFO] [stdout] 196 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:168:41 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 168 | if let Some(mut user) = storage.get(&req.user_principal) { [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-2893603663917079280.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:199:14 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 197 | / storage [INFO] [stdout] 198 | | .borrow() [INFO] [stdout] 199 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-16701564052668225823.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:207:5 [INFO] [stdout] | [INFO] [stdout] 207 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 208 | | storage [INFO] [stdout] 209 | | .borrow() [INFO] [stdout] 210 | | .iter() [INFO] [stdout] 211 | | .find(|(_, user)| user.wallet_address == wallet_address) [INFO] [stdout] 212 | | .map(|(_, user)| user) [INFO] [stdout] 213 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:171:21 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 171 | storage.insert(req.user_principal, user.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-2893603663917079280.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:207:24 [INFO] [stdout] | [INFO] [stdout] 207 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:181:5 [INFO] [stdout] | [INFO] [stdout] 181 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 182 | | let mut storage = storage.borrow_mut(); [INFO] [stdout] 183 | | [INFO] [stdout] 184 | | if let Some(mut user) = storage.get(&user_principal) { [INFO] [stdout] ... | [INFO] [stdout] 191 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:181:24 [INFO] [stdout] | [INFO] [stdout] 181 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:210:14 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 208 | / storage [INFO] [stdout] 209 | | .borrow() [INFO] [stdout] 210 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-16701564052668225823.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:218:5 [INFO] [stdout] | [INFO] [stdout] 218 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 219 | | let users: Vec = storage [INFO] [stdout] 220 | | .borrow() [INFO] [stdout] 221 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 229 | | (total_users, verified_users, active_users) [INFO] [stdout] 230 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:218:24 [INFO] [stdout] | [INFO] [stdout] 218 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `get` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:184:41 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 184 | if let Some(mut user) = storage.get(&user_principal) { [INFO] [stdout] | ^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-2893603663917079280.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:221:14 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 219 | let users: Vec = storage [INFO] [stdout] | ________________________________- [INFO] [stdout] 220 | | .borrow() [INFO] [stdout] 221 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-d7aa019ba6464c40.long-type-16701564052668225823.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `insert` exists for struct `RefMut<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:186:21 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 186 | storage.insert(user_principal, user.clone()); [INFO] [stdout] | ^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-2893603663917079280.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:196:5 [INFO] [stdout] | [INFO] [stdout] 196 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 197 | | storage [INFO] [stdout] 198 | | .borrow() [INFO] [stdout] 199 | | .iter() [INFO] [stdout] 200 | | .find(|(_, user)| user.email == email) [INFO] [stdout] 201 | | .map(|(_, user)| user) [INFO] [stdout] 202 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:196:24 [INFO] [stdout] | [INFO] [stdout] 196 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:199:14 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 197 | / storage [INFO] [stdout] 198 | | .borrow() [INFO] [stdout] 199 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-2217671771438238380.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:207:5 [INFO] [stdout] | [INFO] [stdout] 207 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 208 | | storage [INFO] [stdout] 209 | | .borrow() [INFO] [stdout] 210 | | .iter() [INFO] [stdout] 211 | | .find(|(_, user)| user.wallet_address == wallet_address) [INFO] [stdout] 212 | | .map(|(_, user)| user) [INFO] [stdout] 213 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:207:24 [INFO] [stdout] | [INFO] [stdout] 207 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:210:14 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 208 | / storage [INFO] [stdout] 209 | | .borrow() [INFO] [stdout] 210 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-2217671771438238380.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:218:5 [INFO] [stdout] | [INFO] [stdout] 218 | / USER_STORAGE.with(|storage| { [INFO] [stdout] 219 | | let users: Vec = storage [INFO] [stdout] 220 | | .borrow() [INFO] [stdout] 221 | | .iter() [INFO] [stdout] ... | [INFO] [stdout] 229 | | (total_users, verified_users, active_users) [INFO] [stdout] 230 | | }) [INFO] [stdout] | |______^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: Storable` is not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:218:24 [INFO] [stdout] | [INFO] [stdout] 218 | USER_STORAGE.with(|storage| { [INFO] [stdout] | ^^^^^^^ the trait `Storable` is not implemented for `User` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Storable`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] Blob [INFO] [stdout] BoundedVecN [INFO] [stdout] Reverse [INFO] [stdout] UnboundedVecN [INFO] [stdout] [u8; N] [INFO] [stdout] and 12 others [INFO] [stdout] note: required by a bound in `StableBTreeMap` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/btreemap.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct BTreeMap [INFO] [stdout] | -------- required by a bound in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | V: Storable, [INFO] [stdout] | ^^^^^^^^ required by this bound in `BTreeMap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `iter` exists for struct `Ref<'_, BTreeMap>>>>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/user_canister/src/lib.rs:221:14 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct User { [INFO] [stdout] | --------------- doesn't satisfy `User: Storable` [INFO] [stdout] ... [INFO] [stdout] 219 | let users: Vec = storage [INFO] [stdout] | ________________________________- [INFO] [stdout] 220 | | .borrow() [INFO] [stdout] 221 | | .iter() [INFO] [stdout] | | -^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `User: Storable` [INFO] [stdout] note: the trait `Storable` must be implemented [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-stable-structures-0.6.9/src/storable.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Storable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/user_canister-543e12c0f0152046.long-type-2217671771438238380.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `governance_canister` (lib) due to 58 previous errors [INFO] [stdout] Some errors have detailed explanations: E0277, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `user_canister` (lib) due to 50 previous errors [INFO] [stderr] error: could not compile `user_canister` (lib test) due to 50 previous errors [INFO] running `Command { std: "docker" "inspect" "757a8a3c9eef12456c07c2664ceb2f981640b184c9da431ca910ad09149dfb2d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "757a8a3c9eef12456c07c2664ceb2f981640b184c9da431ca910ad09149dfb2d", kill_on_drop: false }` [INFO] [stdout] 757a8a3c9eef12456c07c2664ceb2f981640b184c9da431ca910ad09149dfb2d