[INFO] cloning repository https://github.com/jedmesilva/lastrum
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jedmesilva/lastrum" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjedmesilva%2Flastrum", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjedmesilva%2Flastrum'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 68380377bb90720380d91e74893cd22a5d2121d9
[INFO] checking jedmesilva/lastrum/68380377bb90720380d91e74893cd22a5d2121d9 against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjedmesilva%2Flastrum" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] [stderr] Updating files:  46% (1591/3429)
Updating files:  47% (1612/3429)
Updating files:  48% (1646/3429)
Updating files:  49% (1681/3429)
Updating files:  50% (1715/3429)
Updating files:  51% (1749/3429)
Updating files:  52% (1784/3429)
Updating files:  53% (1818/3429)
Updating files:  53% (1837/3429)
Updating files:  54% (1852/3429)
Updating files:  55% (1886/3429)
Updating files:  56% (1921/3429)
Updating files:  57% (1955/3429)
Updating files:  58% (1989/3429)
Updating files:  59% (2024/3429)
Updating files:  60% (2058/3429)
Updating files:  60% (2083/3429)
Updating files:  61% (2092/3429)
Updating files:  62% (2126/3429)
Updating files:  63% (2161/3429)
Updating files:  64% (2195/3429)
Updating files:  65% (2229/3429)
Updating files:  66% (2264/3429)
Updating files:  67% (2298/3429)
Updating files:  68% (2332/3429)
Updating files:  69% (2367/3429)
Updating files:  70% (2401/3429)
Updating files:  71% (2435/3429)
Updating files:  72% (2469/3429)
Updating files:  73% (2504/3429)
Updating files:  74% (2538/3429)
Updating files:  75% (2572/3429)
Updating files:  76% (2607/3429)
Updating files:  77% (2641/3429)
Updating files:  78% (2675/3429)
Updating files:  79% (2709/3429)
Updating files:  80% (2744/3429)
Updating files:  81% (2778/3429)
Updating files:  81% (2789/3429)
Updating files:  82% (2812/3429)
Updating files:  83% (2847/3429)
Updating files:  84% (2881/3429)
Updating files:  85% (2915/3429)
Updating files:  86% (2949/3429)
Updating files:  87% (2984/3429)
Updating files:  88% (3018/3429)
Updating files:  89% (3052/3429)
Updating files:  90% (3087/3429)
Updating files:  91% (3121/3429)
Updating files:  92% (3155/3429)
Updating files:  93% (3189/3429)
Updating files:  94% (3224/3429)
Updating files:  95% (3258/3429)
Updating files:  96% (3292/3429)
Updating files:  97% (3327/3429)
Updating files:  98% (3361/3429)
Updating files:  99% (3395/3429)
Updating files: 100% (3429/3429)
Updating files: 100% (3429/3429), done.
[INFO] started tweaking git repo https://github.com/jedmesilva/lastrum
[INFO] finished tweaking git repo https://github.com/jedmesilva/lastrum
[INFO] tweaked toml for git repo https://github.com/jedmesilva/lastrum written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jedmesilva/lastrum on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jedmesilva/lastrum 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" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded windows-result v0.3.2
[INFO] [stderr]   Downloaded windows-strings v0.4.0
[INFO] [stderr]   Downloaded simple_logger v4.3.3
[INFO] [stderr]   Downloaded windows-core v0.61.0
[INFO] [stderr]   Downloaded rusqlite v0.28.0
[INFO] [stderr]   Downloaded cc v1.2.21
[INFO] [stderr]   Downloaded libsqlite3-sys v0.25.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 67bcdc952e3a4526fad68bdd5cd90c6bc3945099335dbae4f41beef239d800bc
[INFO] running `Command { std: "docker" "start" "-a" "67bcdc952e3a4526fad68bdd5cd90c6bc3945099335dbae4f41beef239d800bc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "67bcdc952e3a4526fad68bdd5cd90c6bc3945099335dbae4f41beef239d800bc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "67bcdc952e3a4526fad68bdd5cd90c6bc3945099335dbae4f41beef239d800bc", kill_on_drop: false }`
[INFO] [stdout] 67bcdc952e3a4526fad68bdd5cd90c6bc3945099335dbae4f41beef239d800bc
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 42e9977ed79ba6d5bb29f76562ab8be8052b769a88cffaa3f9545ab3381340c5
[INFO] running `Command { std: "docker" "start" "-a" "42e9977ed79ba6d5bb29f76562ab8be8052b769a88cffaa3f9545ab3381340c5", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]    Compiling zerocopy v0.8.25
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]     Checking futures-core v0.3.31
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling cc v1.2.21
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking smallvec v1.15.0
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]     Checking digest v0.9.0
[INFO] [stderr]    Compiling rustix v1.0.7
[INFO] [stderr]    Compiling time-core v0.1.4
[INFO] [stderr]     Checking deranged v0.4.0
[INFO] [stderr]     Checking block-buffer v0.9.0
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]     Checking opaque-debug v0.3.1
[INFO] [stderr]    Compiling time-macros v0.2.22
[INFO] [stderr]     Checking linux-raw-sys v0.9.4
[INFO] [stderr]     Checking bitflags v2.9.0
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]     Checking clap_builder v4.5.37
[INFO] [stderr]     Checking sha2 v0.9.9
[INFO] [stderr]     Checking fallible-iterator v0.2.0
[INFO] [stderr]     Checking log v0.4.27
[INFO] [stderr]     Checking fallible-streaming-iterator v0.1.9
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking hashlink v0.8.4
[INFO] [stderr]     Checking getrandom v0.1.16
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]     Checking signal-hook-registry v1.4.5
[INFO] [stderr]     Checking dirs-sys v0.3.7
[INFO] [stderr]     Checking mio v1.0.3
[INFO] [stderr]     Checking socket2 v0.5.9
[INFO] [stderr]    Compiling libsqlite3-sys v0.25.2
[INFO] [stderr]     Checking directories v4.0.1
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking time v0.3.41
[INFO] [stderr]     Checking simple_logger v4.3.3
[INFO] [stderr]     Checking tempfile v3.19.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling clap_derive v4.5.32
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]     Checking zeroize v1.3.0
[INFO] [stderr]     Checking tokio v1.44.2
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking curve25519-dalek v3.2.1
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking clap v4.5.37
[INFO] [stderr]     Checking serde v1.0.219
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking rusqlite v0.28.0
[INFO] [stderr]     Checking chrono v0.4.41
[INFO] [stderr]     Checking ed25519-dalek v1.0.1
[INFO] [stderr]     Checking uuid v1.16.0
[INFO] [stderr]     Checking lastrum_certifield v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `PublicKey`
[INFO] [stdout]  --> src/core/signer.rs:6:71
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ed25519_dalek::{Signer as DalekSigner, Verifier as DalekVerifier, PublicKey};
[INFO] [stdout]   |                                                                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Digest` and `Sha256`
[INFO] [stdout]  --> src/core/signer.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | use sha2::{Digest, Sha256};
[INFO] [stdout]   |            ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/certifield/model.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime` and `Utc`
[INFO] [stdout]  --> src/certifield/storage.rs:8:14
[INFO] [stdout]   |
[INFO] [stdout] 8 | use chrono::{DateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uuid::Uuid`
[INFO] [stdout]  --> src/certifield/storage.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use uuid::Uuid;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::identity::Identity`
[INFO] [stdout]   --> src/network/consensus.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::core::identity::Identity;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Peer`
[INFO] [stdout]   --> src/network/sync.rs:10:28
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::network::peer::{Peer, PeerManager};
[INFO] [stdout]    |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]   --> src/network/p2p.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/governance/registry.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/governance/proposals.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uuid::Uuid`
[INFO] [stdout]   --> src/governance/proposals.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use uuid::Uuid;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SignedVote`
[INFO] [stdout]   --> src/governance/proposals.rs:14:92
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::governance::{AssetCategory, AssetProposal, AssetTypeDefinition, ProposalStatus, SignedVote};
[INFO] [stdout]    |                                                                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]   --> src/core/keypair.rs:10:14
[INFO] [stdout]    |
[INFO] [stdout] 10 | use base64::{encode, decode};
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]   --> src/core/keypair.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | use base64::{encode, decode};
[INFO] [stdout]    |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/core/keypair.rs:103:23
[INFO] [stdout]     |
[INFO] [stdout] 103 |         let encoded = encode(&combined);
[INFO] [stdout]     |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]    --> src/core/keypair.rs:117:24
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let combined = decode(&encoded).map_err(|e| Error::custom(format!("Base64 decode error: {}", e)))?;
[INFO] [stdout]     |                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stdout]    --> src/certifield/storage.rs:266:65
[INFO] [stdout]     |
[INFO] [stdout] 266 |                     .map(|ndt| chrono::DateTime::<chrono::Utc>::from_utc(ndt, chrono::Utc))
[INFO] [stdout]     |                                                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `governance::AssetProposal::add_vote`: Use add_signed_vote instead
[INFO] [stdout]    --> src/governance/proposals.rs:154:18
[INFO] [stdout]     |
[INFO] [stdout] 154 |         proposal.add_vote(custody_house_id, vote)?;
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `governance::proposals::ProposalManager::add_vote`: Use add_signed_vote instead
[INFO] [stdout]    --> src/governance/proposals.rs:754:35
[INFO] [stdout]     |
[INFO] [stdout] 754 |         if let Err(e) = proposals.add_vote(proposal_id, custody_house_id.clone(), vote) {
[INFO] [stdout]     |                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PublicKey`
[INFO] [stdout]  --> src/core/signer.rs:6:71
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ed25519_dalek::{Signer as DalekSigner, Verifier as DalekVerifier, PublicKey};
[INFO] [stdout]   |                                                                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha256`
[INFO] [stdout]  --> src/core/signer.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | use sha2::{Digest, Sha256};
[INFO] [stdout]   |                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/certifield/model.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/certifield/storage.rs:8:14
[INFO] [stdout]   |
[INFO] [stdout] 8 | use chrono::{DateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uuid::Uuid`
[INFO] [stdout]  --> src/certifield/storage.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use uuid::Uuid;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::certifield::builder::CertificateBuilder`
[INFO] [stdout]    --> src/certifield/storage.rs:305:9
[INFO] [stdout]     |
[INFO] [stdout] 305 |     use crate::certifield::builder::CertificateBuilder;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::identity::Identity`
[INFO] [stdout]   --> src/network/consensus.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::core::identity::Identity;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Peer`
[INFO] [stdout]   --> src/network/sync.rs:10:28
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::network::peer::{Peer, PeerManager};
[INFO] [stdout]    |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]   --> src/network/p2p.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/governance/registry.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/governance/proposals.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uuid::Uuid`
[INFO] [stdout]   --> src/governance/proposals.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use uuid::Uuid;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SignedVote`
[INFO] [stdout]   --> src/governance/proposals.rs:14:92
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::governance::{AssetCategory, AssetProposal, AssetTypeDefinition, ProposalStatus, SignedVote};
[INFO] [stdout]    |                                                                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Certificate`
[INFO] [stdout]  --> src/tests/signer_tests.rs:6:31
[INFO] [stdout]   |
[INFO] [stdout] 6 |     model::{Asset, AssetType, Certificate},
[INFO] [stdout]   |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `storage::CertificateStorage`
[INFO] [stdout]  --> src/tests/network_tests.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     storage::CertificateStorage,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `validator::Validator`
[INFO] [stdout]   --> src/tests/network_tests.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     validator::Validator,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ValidationDecision`
[INFO] [stdout]   --> src/tests/network_tests.rs:18:38
[INFO] [stdout]    |
[INFO] [stdout] 18 |     protocol::{Message, MessageType, ValidationDecision},
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/certifield/storage.rs:271:13
[INFO] [stdout]     |
[INFO] [stdout] 271 |         let mut certificate = Certificate {
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `approve_votes`
[INFO] [stdout]    --> src/governance/proposals.rs:202:22
[INFO] [stdout]     |
[INFO] [stdout] 202 |                 let (approve_votes, _, approved) = proposal.calculate_result(total_custody_houses);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_approve_votes`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `asset_definition`
[INFO] [stdout]    --> src/governance/proposals.rs:211:23
[INFO] [stdout]     |
[INFO] [stdout] 211 |             if let Ok(asset_definition) = self.finalize_proposal(&id, approved) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_asset_definition`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/governance/proposals.rs:385:29
[INFO] [stdout]     |
[INFO] [stdout] 385 |                         let mut votes = if !metadata.votes.is_empty() {
[INFO] [stdout]     |                             ----^^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `db_path` is never read
[INFO] [stdout]   --> src/certifield/storage.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct CertificateStorage {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] 17 |     db_path: PathBuf,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `identity` is never read
[INFO] [stdout]   --> src/network/p2p.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct P2PService {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 44 |     /// Identidade do nó local
[INFO] [stdout] 45 |     identity: Identity,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]   --> src/core/keypair.rs:10:14
[INFO] [stdout]    |
[INFO] [stdout] 10 | use base64::{encode, decode};
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]   --> src/core/keypair.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | use base64::{encode, decode};
[INFO] [stdout]    |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/core/keypair.rs:103:23
[INFO] [stdout]     |
[INFO] [stdout] 103 |         let encoded = encode(&combined);
[INFO] [stdout]     |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]    --> src/core/keypair.rs:117:24
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let combined = decode(&encoded).map_err(|e| Error::custom(format!("Base64 decode error: {}", e)))?;
[INFO] [stdout]     |                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AssetCategory`, `AssetTypeDefinition`, `Certificate`, `MessageType`, `Message`, `Peer`, `keypair::KeyPair`, and `self`
[INFO] [stdout]   --> src/main.rs:13:35
[INFO] [stdout]    |
[INFO] [stdout] 13 |         model::{Asset, AssetType, Certificate},
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |         keypair::KeyPair,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |         peer::{Peer, PeerManager},
[INFO] [stdout]    |                ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |         protocol::{Message, MessageType}
[INFO] [stdout]    |                    ^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |         self,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 32 |         AssetCategory,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 33 |         AssetTypeDefinition,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Utc` in this scope
[INFO] [stdout]    --> src/core/validator.rs:168:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |         let past_date = Utc::now() - chrono::Duration::days(1);
[INFO] [stdout]     |                         ^^^ use of undeclared type `Utc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stdout]    --> src/certifield/storage.rs:266:65
[INFO] [stdout]     |
[INFO] [stdout] 266 |                     .map(|ndt| chrono::DateTime::<chrono::Utc>::from_utc(ndt, chrono::Utc))
[INFO] [stdout]     |                                                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AssetCategory`, `AssetTypeDefinition`, `Certificate`, `MessageType`, `Message`, `Peer`, `keypair::KeyPair`, and `self`
[INFO] [stdout]   --> src/main.rs:13:35
[INFO] [stdout]    |
[INFO] [stdout] 13 |         model::{Asset, AssetType, Certificate},
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |         keypair::KeyPair,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |         peer::{Peer, PeerManager},
[INFO] [stdout]    |                ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |         protocol::{Message, MessageType}
[INFO] [stdout]    |                    ^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |         self,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 32 |         AssetCategory,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 33 |         AssetTypeDefinition,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `governance::AssetProposal::add_vote`: Use add_signed_vote instead
[INFO] [stdout]    --> src/governance/proposals.rs:154:18
[INFO] [stdout]     |
[INFO] [stdout] 154 |         proposal.add_vote(custody_house_id, vote)?;
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `governance::proposals::ProposalManager::add_vote`: Use add_signed_vote instead
[INFO] [stdout]    --> src/governance/proposals.rs:754:35
[INFO] [stdout]     |
[INFO] [stdout] 754 |         if let Err(e) = proposals.add_vote(proposal_id, custody_house_id.clone(), vote) {
[INFO] [stdout]     |                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/tests/signer_tests.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let asset = Asset::new(
[INFO] [stdout]    |                 ---------- arguments to this function are incorrect
[INFO] [stdout] ...
[INFO] [stdout] 25 |         0.999,
[INFO] [stdout]    |         ^^^^^ expected `String`, found floating-point number
[INFO] [stdout]    |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]   --> src/certifield/model.rs:99:12
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub fn new(asset_type: AssetType, quantity: f64, unit: String, serial: String) -> Self {
[INFO] [stdout]    |            ^^^                                       ------------
[INFO] [stdout] help: try using a conversion method
[INFO] [stdout]    |
[INFO] [stdout] 25 |         0.999.to_string(),
[INFO] [stdout]    |              ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_issuer` found for struct `builder::CertificateBuilder` in the current scope
[INFO] [stdout]   --> src/tests/signer_tests.rs:31:10
[INFO] [stdout]    |
[INFO] [stdout] 30 |       let certificate = CertificateBuilder::new()
[INFO] [stdout]    |  _______________________-
[INFO] [stdout] 31 | |         .with_issuer("Test Custody House".to_string())
[INFO] [stdout]    | |_________-^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/certifield/builder.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 |   pub struct CertificateBuilder {
[INFO] [stdout]    |   ----------------------------- method `with_issuer` not found for this struct
[INFO] [stdout]    |
[INFO] [stdout] help: there is a method `with_asset` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 31 -         .with_issuer("Test Custody House".to_string())
[INFO] [stdout] 31 +         .with_asset("Test Custody House".to_string())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `weight` on type `model::Asset`
[INFO] [stdout]   --> src/tests/signer_tests.rs:55:32
[INFO] [stdout]    |
[INFO] [stdout] 55 |     tampered_certificate.asset.weight = 200.0; // Change the weight
[INFO] [stdout]    |                                ^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `asset_type`, `quantity`, `unit`, `purity`, `serial`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/tests/certifield_tests.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let asset = Asset::new(
[INFO] [stdout]    |                 ---------- arguments to this function are incorrect
[INFO] [stdout] ...
[INFO] [stdout] 29 |         0.999,
[INFO] [stdout]    |         ^^^^^ expected `String`, found floating-point number
[INFO] [stdout]    |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]   --> src/certifield/model.rs:99:12
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub fn new(asset_type: AssetType, quantity: f64, unit: String, serial: String) -> Self {
[INFO] [stdout]    |            ^^^                                       ------------
[INFO] [stdout] help: try using a conversion method
[INFO] [stdout]    |
[INFO] [stdout] 29 |         0.999.to_string(),
[INFO] [stdout]    |              ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_issuer` found for struct `builder::CertificateBuilder` in the current scope
[INFO] [stdout]   --> src/tests/certifield_tests.rs:35:10
[INFO] [stdout]    |
[INFO] [stdout] 34 |       let certificate = CertificateBuilder::new()
[INFO] [stdout]    |  _______________________-
[INFO] [stdout] 35 | |         .with_issuer(identity.name().to_string())
[INFO] [stdout]    | |_________-^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/certifield/builder.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 |   pub struct CertificateBuilder {
[INFO] [stdout]    |   ----------------------------- method `with_issuer` not found for this struct
[INFO] [stdout]    |
[INFO] [stdout] help: there is a method `with_asset` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 35 -         .with_issuer(identity.name().to_string())
[INFO] [stdout] 35 +         .with_asset(identity.name().to_string())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `issuer` on type `model::Certificate`
[INFO] [stdout]   --> src/tests/certifield_tests.rs:53:35
[INFO] [stdout]    |
[INFO] [stdout] 53 |     assert_eq!(loaded_certificate.issuer, signed_certificate.issuer);
[INFO] [stdout]    |                                   ^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `request_type`, `id`, `custody_house_id`, `custody_house_hash`, `authorized_wallets` ... and 7 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `issuer` on type `model::Certificate`
[INFO] [stdout]   --> src/tests/certifield_tests.rs:53:62
[INFO] [stdout]    |
[INFO] [stdout] 53 |     assert_eq!(loaded_certificate.issuer, signed_certificate.issuer);
[INFO] [stdout]    |                                                              ^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `request_type`, `id`, `custody_house_id`, `custody_house_hash`, `authorized_wallets` ... and 7 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `weight` on type `model::Asset`
[INFO] [stdout]   --> src/tests/certifield_tests.rs:55:41
[INFO] [stdout]    |
[INFO] [stdout] 55 |     assert_eq!(loaded_certificate.asset.weight, signed_certificate.asset.weight);
[INFO] [stdout]    |                                         ^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `asset_type`, `quantity`, `unit`, `purity`, `serial`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `weight` on type `model::Asset`
[INFO] [stdout]   --> src/tests/certifield_tests.rs:55:74
[INFO] [stdout]    |
[INFO] [stdout] 55 |     assert_eq!(loaded_certificate.asset.weight, signed_certificate.asset.weight);
[INFO] [stdout]    |                                                                          ^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `asset_type`, `quantity`, `unit`, `purity`, `serial`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/tests/network_tests.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |     let asset = Asset::new(
[INFO] [stdout]    |                 ---------- arguments to this function are incorrect
[INFO] [stdout] ...
[INFO] [stdout] 93 |         0.9999,
[INFO] [stdout]    |         ^^^^^^ expected `String`, found floating-point number
[INFO] [stdout]    |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]   --> src/certifield/model.rs:99:12
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub fn new(asset_type: AssetType, quantity: f64, unit: String, serial: String) -> Self {
[INFO] [stdout]    |            ^^^                                       ------------
[INFO] [stdout] help: try using a conversion method
[INFO] [stdout]    |
[INFO] [stdout] 93 |         0.9999.to_string(),
[INFO] [stdout]    |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_issuer` found for struct `builder::CertificateBuilder` in the current scope
[INFO] [stdout]   --> src/tests/network_tests.rs:98:10
[INFO] [stdout]    |
[INFO] [stdout] 97 |       let certificate = CertificateBuilder::new()
[INFO] [stdout]    |  _______________________-
[INFO] [stdout] 98 | |         .with_issuer("Casa de Testes".to_string())
[INFO] [stdout]    | |_________-^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/certifield/builder.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 |   pub struct CertificateBuilder {
[INFO] [stdout]    |   ----------------------------- method `with_issuer` not found for this struct
[INFO] [stdout]    |
[INFO] [stdout] help: there is a method `with_asset` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 98 -         .with_issuer("Casa de Testes".to_string())
[INFO] [stdout] 98 +         .with_asset("Casa de Testes".to_string())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/tests/network_tests.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |     let asset = Asset::new(
[INFO] [stdout]     |                 ---------- arguments to this function are incorrect
[INFO] [stdout] ...
[INFO] [stdout] 150 |         0.9999,
[INFO] [stdout]     |         ^^^^^^ expected `String`, found floating-point number
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/certifield/model.rs:99:12
[INFO] [stdout]     |
[INFO] [stdout]  99 |     pub fn new(asset_type: AssetType, quantity: f64, unit: String, serial: String) -> Self {
[INFO] [stdout]     |            ^^^                                       ------------
[INFO] [stdout] help: try using a conversion method
[INFO] [stdout]     |
[INFO] [stdout] 150 |         0.9999.to_string(),
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_issuer` found for struct `builder::CertificateBuilder` in the current scope
[INFO] [stdout]    --> src/tests/network_tests.rs:155:10
[INFO] [stdout]     |
[INFO] [stdout] 154 |       let certificate = CertificateBuilder::new()
[INFO] [stdout]     |  _______________________-
[INFO] [stdout] 155 | |         .with_issuer("Casa de Custódia 1".to_string()) // Nome correspondente a um peer na rede
[INFO] [stdout]     | |_________-^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/certifield/builder.rs:12:1
[INFO] [stdout]     |
[INFO] [stdout]  12 |   pub struct CertificateBuilder {
[INFO] [stdout]     |   ----------------------------- method `with_issuer` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `with_asset` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 155 -         .with_issuer("Casa de Custódia 1".to_string()) // Nome correspondente a um peer na rede
[INFO] [stdout] 155 +         .with_asset("Casa de Custódia 1".to_string()) // Nome correspondente a um peer na rede
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/tests/network_tests.rs:181:9
[INFO] [stdout]     |
[INFO] [stdout] 178 |     let asset = Asset::new(
[INFO] [stdout]     |                 ---------- arguments to this function are incorrect
[INFO] [stdout] ...
[INFO] [stdout] 181 |         0.9999,
[INFO] [stdout]     |         ^^^^^^ expected `String`, found floating-point number
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/certifield/model.rs:99:12
[INFO] [stdout]     |
[INFO] [stdout]  99 |     pub fn new(asset_type: AssetType, quantity: f64, unit: String, serial: String) -> Self {
[INFO] [stdout]     |            ^^^                                       ------------
[INFO] [stdout] help: try using a conversion method
[INFO] [stdout]     |
[INFO] [stdout] 181 |         0.9999.to_string(),
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_issuer` found for struct `builder::CertificateBuilder` in the current scope
[INFO] [stdout]    --> src/tests/network_tests.rs:186:10
[INFO] [stdout]     |
[INFO] [stdout] 185 |       let certificate = CertificateBuilder::new()
[INFO] [stdout]     |  _______________________-
[INFO] [stdout] 186 | |         .with_issuer("Casa de Testes".to_string())
[INFO] [stdout]     | |_________-^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/certifield/builder.rs:12:1
[INFO] [stdout]     |
[INFO] [stdout]  12 |   pub struct CertificateBuilder {
[INFO] [stdout]     |   ----------------------------- method `with_issuer` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `with_asset` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 186 -         .with_issuer("Casa de Testes".to_string())
[INFO] [stdout] 186 +         .with_asset("Casa de Testes".to_string())
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Digest`
[INFO] [stdout]  --> src/core/signer.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | use sha2::{Digest, Sha256};
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of index of `Vec<TokenLedger>`
[INFO] [stdout]    --> src/certifield/model.rs:519:20
[INFO] [stdout]     |
[INFO] [stdout] 519 |         assert_eq!(cert.token_ledgers[0].consumer_wallet.unwrap(), "consumer_wallet");
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -------- value moved due to this method call
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    help: consider calling `.as_ref()` or `.as_mut()` to borrow the type's contents
[INFO] [stdout]     |                    move occurs because value has type `std::option::Option<std::string::String>`, which does not implement the `Copy` trait
[INFO] [stdout]     |
[INFO] [stdout] note: `std::option::Option::<T>::unwrap` takes ownership of the receiver `self`, which moves value
[INFO] [stdout]    --> /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/core/src/option.rs:1013:24
[INFO] [stdout] help: you can `clone` the value and consume it, but this might not be your desired behavior
[INFO] [stdout]     |
[INFO] [stdout] 519 |         assert_eq!(<std::option::Option<std::string::String> as Clone>::clone(&cert.token_ledgers[0].consumer_wallet).unwrap(), "consumer_wallet");
[INFO] [stdout]     |                    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                                     +
[INFO] [stdout] help: consider cloning the value if the performance cost is acceptable
[INFO] [stdout]     |
[INFO] [stdout] 519 |         assert_eq!(cert.token_ledgers[0].consumer_wallet.clone().unwrap(), "consumer_wallet");
[INFO] [stdout]     |                                                         ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/certifield/storage.rs:271:13
[INFO] [stdout]     |
[INFO] [stdout] 271 |         let mut certificate = Certificate {
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `approve_votes`
[INFO] [stdout]    --> src/governance/proposals.rs:202:22
[INFO] [stdout]     |
[INFO] [stdout] 202 |                 let (approve_votes, _, approved) = proposal.calculate_result(total_custody_houses);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_approve_votes`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `asset_definition`
[INFO] [stdout]    --> src/governance/proposals.rs:211:23
[INFO] [stdout]     |
[INFO] [stdout] 211 |             if let Ok(asset_definition) = self.finalize_proposal(&id, approved) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_asset_definition`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/governance/proposals.rs:385:29
[INFO] [stdout]     |
[INFO] [stdout] 385 |                         let mut votes = if !metadata.votes.is_empty() {
[INFO] [stdout]     |                             ----^^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0433, E0507, E0599, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `lastrum_certifield` (lib test) due to 17 previous errors; 29 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "42e9977ed79ba6d5bb29f76562ab8be8052b769a88cffaa3f9545ab3381340c5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "42e9977ed79ba6d5bb29f76562ab8be8052b769a88cffaa3f9545ab3381340c5", kill_on_drop: false }`
[INFO] [stdout] 42e9977ed79ba6d5bb29f76562ab8be8052b769a88cffaa3f9545ab3381340c5
