stack_test_epic_core 3.0.3

Chain implementation for epic, a simple, private and scalable cryptocurrency implementation based on the MimbleWimble chain format.
Documentation
Build #1816683 2025-02-28 18:34:30
# rustc version
rustc 1.87.0-nightly (96cfc7558 2025-02-27)# docs.rs version
docsrs 0.6.0 (d925d3c8 2025-02-27)# build log
[INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace/builds/stack_test_epic_core-3.0.3/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace/builds/stack_test_epic_core-3.0.3/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "DOCS_RS=1" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "6442450944" "--cpus" "6" "--user" "1001:1001" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20250227-1.87.0-nightly-96cfc7558\", \"--static-root-path\", \"/-/rustdoc.static/\", \"--cap-lints\", \"warn\", \"--extern-html-root-takes-precedence\"]" "--offline" "-Zunstable-options" "--config=doc.extern-map.registries.crates-io=\"https://docs.rs/{pkg_name}/{version}/x86_64-unknown-linux-gnu\"" "-Zrustdoc-scrape-examples" "-j6" "--target" "x86_64-unknown-linux-gnu", kill_on_drop: false }`
[INFO] [stdout] 11e764a82ecc1214c22b51d4771a9d707b11bfdce9aac10ae137796ab7021760
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "11e764a82ecc1214c22b51d4771a9d707b11bfdce9aac10ae137796ab7021760", kill_on_drop: false }`
[INFO] [stderr] warning: target filter specified, but no targets matched; this is a no-op
[INFO] [stderr]  Documenting stack_test_epic_core v3.0.3 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> src/core/committed.rs:128:14
[INFO] [stderr]     |
[INFO] [stderr] 128 |     ) -> Result<((Commitment, Commitment)), Error> {
[INFO] [stderr]     |                 ^                        ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 128 -     ) -> Result<((Commitment, Commitment)), Error> {
[INFO] [stderr] 128 +     ) -> Result<(Commitment, Commitment), Error> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/global.rs:290:5
[INFO] [stderr]     |
[INFO] [stderr] 290 |     if (height <= consensus::BLOCK_ERA_1) {
[INFO] [stderr]     |        ^                                ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 290 -     if (height <= consensus::BLOCK_ERA_1) {
[INFO] [stderr] 290 +     if height <= consensus::BLOCK_ERA_1 {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/global.rs:292:12
[INFO] [stderr]     |
[INFO] [stderr] 292 |     } else if (height <= consensus::BLOCK_ERA_2) {
[INFO] [stderr]     |               ^                                ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 292 -     } else if (height <= consensus::BLOCK_ERA_2) {
[INFO] [stderr] 292 +     } else if height <= consensus::BLOCK_ERA_2 {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/global.rs:294:12
[INFO] [stderr]     |
[INFO] [stderr] 294 |     } else if (height <= consensus::BLOCK_ERA_3) {
[INFO] [stderr]     |               ^                                ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 294 -     } else if (height <= consensus::BLOCK_ERA_3) {
[INFO] [stderr] 294 +     } else if height <= consensus::BLOCK_ERA_3 {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/global.rs:296:12
[INFO] [stderr]     |
[INFO] [stderr] 296 |     } else if (height <= consensus::BLOCK_ERA_4) {
[INFO] [stderr]     |               ^                                ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 296 -     } else if (height <= consensus::BLOCK_ERA_4) {
[INFO] [stderr] 296 +     } else if height <= consensus::BLOCK_ERA_4 {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/global.rs:298:12
[INFO] [stderr]     |
[INFO] [stderr] 298 |     } else if (height <= consensus::BLOCK_ERA_5) {
[INFO] [stderr]     |               ^                                ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 298 -     } else if (height <= consensus::BLOCK_ERA_5) {
[INFO] [stderr] 298 +     } else if height <= consensus::BLOCK_ERA_5 {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a constant
[INFO] [stderr]    --> src/consensus.rs:175:1
[INFO] [stderr]     |
[INFO] [stderr] 175 | pub const FOUNDATION_LEVY: [u64; 9] = [888, 777, 666, 555, 444, 333, 222, 111, 111];
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:22:9
[INFO] [stderr]     |
[INFO] [stderr] 22  | #![warn(missing_docs)]
[INFO] [stderr]     |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/consensus.rs:542:1
[INFO] [stderr]     |
[INFO] [stderr] 542 | / pub fn next_policy<T>(policy: u8, cursor: T) -> (PoWType, Policy)
[INFO] [stderr] 543 | | where
[INFO] [stderr] 544 | |     T: IntoIterator<Item = Policy>,
[INFO] [stderr]     | |___________________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]   --> src/core.rs:18:1
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub mod block_fees;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]   --> src/core.rs:22:1
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub mod foundation;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]   --> src/core/block.rs:17:1
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub mod feijoada;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/core/block.rs:61:2
[INFO] [stderr]    |
[INFO] [stderr] 61 |     InvalidFoundationOutput,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/core/block.rs:395:2
[INFO] [stderr]     |
[INFO] [stderr] 395 |     pub fn pre_pow_hash(&self) -> [u8; 32] {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/core/block.rs:431:2
[INFO] [stderr]     |
[INFO] [stderr] 431 |     pub fn overage(&self) -> i64 {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/core/block/feijoada.rs:50:1
[INFO] [stderr]    |
[INFO] [stderr] 50 | pub struct AllowPolicy {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/core/block/feijoada.rs:51:2
[INFO] [stderr]    |
[INFO] [stderr] 51 |     pub height: u64,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/core/block/feijoada.rs:52:2
[INFO] [stderr]    |
[INFO] [stderr] 52 |     pub value: u64,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a type alias
[INFO] [stderr]   --> src/core/block/feijoada.rs:55:1
[INFO] [stderr]    |
[INFO] [stderr] 55 | pub type AllowedPolicy = Vec<AllowPolicy>;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a trait
[INFO] [stderr]   --> src/core/block/feijoada.rs:57:1
[INFO] [stderr]    |
[INFO] [stderr] 57 | pub trait FuzzySearch {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/core/block/feijoada.rs:58:2
[INFO] [stderr]    |
[INFO] [stderr] 58 |     fn search(&self, height: u64) -> Option<u64>;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/core/block/feijoada.rs:81:2
[INFO] [stderr]    |
[INFO] [stderr] 81 |     pub allowed_policies: AllowedPolicy,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/core/block/feijoada.rs:82:2
[INFO] [stderr]    |
[INFO] [stderr] 82 |     pub policies: Vec<Policy>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/core/block/feijoada.rs:171:1
[INFO] [stderr]     |
[INFO] [stderr] 171 | pub fn get_bottles_default() -> Policy {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/core/block/feijoada.rs:184:1
[INFO] [stderr]     |
[INFO] [stderr] 184 | pub fn next_block_bottles(pow: PoWType, bottle: &Policy) -> Policy {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/core/block/feijoada.rs:195:1
[INFO] [stderr]     |
[INFO] [stderr] 195 | pub fn is_allowed_policy(allowed_policy: AllowedPolicy, height: u64, policy: u8) -> bool {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/core/block/feijoada.rs:252:1
[INFO] [stderr]     |
[INFO] [stderr] 252 | pub fn count_beans(bottles: &Policy) -> u32 {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a trait
[INFO] [stderr]    --> src/core/block/feijoada.rs:256:1
[INFO] [stderr]     |
[INFO] [stderr] 256 | pub trait Feijoada {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]    --> src/core/block/feijoada.rs:257:2
[INFO] [stderr]     |
[INFO] [stderr] 257 |     fn choose_algo(policy: &Policy, bottles: &Policy) -> PoWType;
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]    --> src/core/block/feijoada.rs:260:1
[INFO] [stderr]     |
[INFO] [stderr] 260 | pub struct Deterministic;
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a constant
[INFO] [stderr]    --> src/global.rs:107:1
[INFO] [stderr]     |
[INFO] [stderr] 107 | pub const CURRENT_HEADER_VERSION: u16 = 6;
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a constant
[INFO] [stderr]    --> src/global.rs:110:1
[INFO] [stderr]     |
[INFO] [stderr] 110 | pub const MAINNET_FOUNDATION_JSON_SHA256: &str =
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a constant
[INFO] [stderr]    --> src/global.rs:117:1
[INFO] [stderr]     |
[INFO] [stderr] 117 | pub const FLOONET_FOUNDATION_JSON_SHA256: &str =
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/global.rs:193:1
[INFO] [stderr]     |
[INFO] [stderr] 193 | pub fn foundation_json_sha256() -> &'static str {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/global.rs:276:1
[INFO] [stderr]     |
[INFO] [stderr] 276 | pub fn add_allowed_policy(height: u64, value: u64) {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/global.rs:283:1
[INFO] [stderr]     |
[INFO] [stderr] 283 | pub fn get_allowed_policies() -> Vec<AllowPolicy> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/global.rs:288:1
[INFO] [stderr]     |
[INFO] [stderr] 288 | pub fn get_emitted_policy(height: u64) -> u8 {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/global.rs:305:1
[INFO] [stderr]     |
[INFO] [stderr] 305 | pub fn get_policies(index: u8) -> Option<Policy> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/global.rs:556:1
[INFO] [stderr]     |
[INFO] [stderr] 556 | / pub fn ts_data_to_vector<T>(cursor: T, needed_block_count: u64) -> Vec<HeaderInfo>
[INFO] [stderr] 557 | | where
[INFO] [stderr] 558 | |     T: IntoIterator<Item = HeaderInfo>,
[INFO] [stderr]     | |_______________________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/global.rs:610:1
[INFO] [stderr]     |
[INFO] [stderr] 610 | pub fn get_file_sha256(path: &str) -> String {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]   --> src/libtx/reward.rs:28:1
[INFO] [stderr]    |
[INFO] [stderr] 28 | / pub fn output_foundation<K, B>(
[INFO] [stderr] 29 | |     keychain: &K,
[INFO] [stderr] 30 | |     builder: &B,
[INFO] [stderr] 31 | |     key_id: &Identifier,
[INFO] [stderr] ...  |
[INFO] [stderr] 36 | |     K: Keychain,
[INFO] [stderr] 37 | |     B: ProofBuild,
[INFO] [stderr]    | |__________________^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/libtx/mod.rs:22:9
[INFO] [stderr]    |
[INFO] [stderr] 22 | #![warn(missing_docs)]
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]    --> src/libtx/reward.rs:151:1
[INFO] [stderr]     |
[INFO] [stderr] 151 | / pub fn output_foundation_proof<K>(
[INFO] [stderr] 152 | |     keychain: &K,
[INFO] [stderr] 153 | |     key_id: &Identifier,
[INFO] [stderr] 154 | |     test_mode: bool,
[INFO] [stderr] ...   |
[INFO] [stderr] 157 | | where
[INFO] [stderr] 158 | |     K: Keychain,
[INFO] [stderr]     | |________________^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]   --> src/pow.rs:42:1
[INFO] [stderr]    |
[INFO] [stderr] 42 | pub mod progpow;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/pow.rs:29:9
[INFO] [stderr]    |
[INFO] [stderr] 29 | #![warn(missing_docs)]
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]   --> src/pow.rs:43:1
[INFO] [stderr]    |
[INFO] [stderr] 43 | pub mod randomx;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]  --> src/pow/md5.rs:8:1
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub struct MD5Context<T>
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/pow/md5.rs:13:2
[INFO] [stderr]    |
[INFO] [stderr] 13 |     pub edge_bits: u8,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/pow/md5.rs:14:2
[INFO] [stderr]    |
[INFO] [stderr] 14 |     pub proof_size: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/pow/md5.rs:15:2
[INFO] [stderr]    |
[INFO] [stderr] 15 |     pub max_sols: u32,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]   --> src/pow/md5.rs:20:1
[INFO] [stderr]    |
[INFO] [stderr] 20 | / pub fn new_md5_ctx<T>(
[INFO] [stderr] 21 | |     edge_bits: u8,
[INFO] [stderr] 22 | |     proof_size: usize,
[INFO] [stderr] 23 | |     max_sols: u32,
[INFO] [stderr] 24 | | ) -> Result<Box<dyn PoWContext<T>>, Error>
[INFO] [stderr] 25 | | where
[INFO] [stderr] 26 | |     T: EdgeType + 'static,
[INFO] [stderr]    | |__________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]   --> src/pow/progpow.rs:22:1
[INFO] [stderr]    |
[INFO] [stderr] 22 | / pub fn new_progpow_ctx<T>() -> Result<Box<dyn PoWContext<T>>, Error>
[INFO] [stderr] 23 | |     where
[INFO] [stderr] 24 | |         T: EdgeType + 'static,
[INFO] [stderr]    | |______________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]   --> src/pow/progpow.rs:47:1
[INFO] [stderr]    |
[INFO] [stderr] 47 | pub fn get_progpow_value(header: &[u8], height: u64, nonce: u64) -> [u8; 32] {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/pow/progpow.rs:61:1
[INFO] [stderr]    |
[INFO] [stderr] 61 | pub struct ProgPowContext<T>
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/pow/progpow.rs:65:2
[INFO] [stderr]    |
[INFO] [stderr] 65 |     pub header: Vec<u8>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/pow/progpow.rs:66:2
[INFO] [stderr]    |
[INFO] [stderr] 66 |     pub nonce: u64,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/pow/progpow.rs:67:2
[INFO] [stderr]    |
[INFO] [stderr] 67 |     pub height: u64,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a constant
[INFO] [stderr]   --> src/pow/randomx.rs:16:1
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub const SEEDHASH_EPOCH_BLOCKS: u64 = 1000;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a constant
[INFO] [stderr]   --> src/pow/randomx.rs:17:1
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub const SEEDHASH_EPOCH_LAG: u64 = 60;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]   --> src/pow/randomx.rs:19:1
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub fn rx_epoch_start(epoch_height: u64) -> u64 {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]   --> src/pow/randomx.rs:27:1
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub fn rx_epoch_end(epoch_height: u64) -> u64 {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]   --> src/pow/randomx.rs:35:1
[INFO] [stderr]    |
[INFO] [stderr] 35 | pub fn rx_next_seed_height(height: u64) -> Option<u64> {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]   --> src/pow/randomx.rs:49:1
[INFO] [stderr]    |
[INFO] [stderr] 49 | pub fn rx_current_seed_height(height: u64) -> u64 {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/pow/randomx.rs:61:1
[INFO] [stderr]    |
[INFO] [stderr] 61 | pub struct RXContext<T>
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/pow/randomx.rs:65:2
[INFO] [stderr]    |
[INFO] [stderr] 65 |     pub seed: [u8; 32],
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/pow/randomx.rs:66:2
[INFO] [stderr]    |
[INFO] [stderr] 66 |     pub header: Vec<u8>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/pow/randomx.rs:67:2
[INFO] [stderr]    |
[INFO] [stderr] 67 |     pub nonce: u64,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a function
[INFO] [stderr]   --> src/pow/randomx.rs:71:1
[INFO] [stderr]    |
[INFO] [stderr] 71 | / pub fn new_randomx_ctx<T>(seed: [u8; 32]) -> Result<Box<dyn PoWContext<T>>, Error>
[INFO] [stderr] 72 | |     where
[INFO] [stderr] 73 | |         T: EdgeType + 'static,
[INFO] [stderr]    | |______________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]   --> src/pow/types.rs:45:1
[INFO] [stderr]    |
[INFO] [stderr] 45 | pub enum PoWType {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/pow/types.rs:46:2
[INFO] [stderr]    |
[INFO] [stderr] 46 |     Cuckaroo,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/pow/types.rs:47:2
[INFO] [stderr]    |
[INFO] [stderr] 47 |     Cuckatoo,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/pow/types.rs:48:2
[INFO] [stderr]    |
[INFO] [stderr] 48 |     RandomX,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/pow/types.rs:49:2
[INFO] [stderr]    |
[INFO] [stderr] 49 |     ProgPow,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/pow/types.rs:62:2
[INFO] [stderr]    |
[INFO] [stderr] 62 |     pub fn to_str(&self) -> String {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a trait
[INFO] [stderr]    --> src/pow/types.rs:124:1
[INFO] [stderr]     |
[INFO] [stderr] 124 | pub trait DifficultyNumberBasic {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]    --> src/pow/types.rs:125:2
[INFO] [stderr]     |
[INFO] [stderr] 125 |     fn number(v: u64) -> Self;
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a type alias
[INFO] [stderr]    --> src/pow/types.rs:128:1
[INFO] [stderr]     |
[INFO] [stderr] 128 | pub type DifficultyNumber = HashMap<PoWType, u64>;
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/pow/types.rs:146:2
[INFO] [stderr]     |
[INFO] [stderr] 146 |     pub num: DifficultyNumber,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]    --> src/pow/types.rs:180:2
[INFO] [stderr]     |
[INFO] [stderr] 180 |     pub fn from_dic_number(num: DifficultyNumber) -> Difficulty {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/pow/types.rs:554:2
[INFO] [stderr]     |
[INFO] [stderr] 554 |     MD5Proof {
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/pow/types.rs:555:3
[INFO] [stderr]     |
[INFO] [stderr] 555 |         proof: String,
[INFO] [stderr]     |         ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/pow/types.rs:556:3
[INFO] [stderr]     |
[INFO] [stderr] 556 |         edge_bits: u8,
[INFO] [stderr]     |         ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/pow/types.rs:559:2
[INFO] [stderr]     |
[INFO] [stderr] 559 |     RandomXProof {
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/pow/types.rs:560:3
[INFO] [stderr]     |
[INFO] [stderr] 560 |         hash: [u8; 32],
[INFO] [stderr]     |         ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/pow/types.rs:563:2
[INFO] [stderr]     |
[INFO] [stderr] 563 |     ProgPowProof {
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/pow/types.rs:564:3
[INFO] [stderr]     |
[INFO] [stderr] 564 |         mix: [u8; 32],
[INFO] [stderr]     |         ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `3,1`
[INFO] [stderr]    --> src/core/pmmr/pmmr.rs:451:35
[INFO] [stderr]     |
[INFO] [stderr] 451 | /// Example: on input 5 returns ([3,1], 1) as mmr state before adding 5 was
[INFO] [stderr]     |                                   ^^^ no item named `3,1` in scope
[INFO] [stderr]     |
[INFO] [stderr]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stderr]     = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `n`
[INFO] [stderr]    --> src/global.rs:471:58
[INFO] [stderr]     |
[INFO] [stderr] 471 | /// Production defined as a live public network, testnet[n] or mainnet.
[INFO] [stderr]     |                                                          ^ no item named `n` in scope
[INFO] [stderr]     |
[INFO] [stderr]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stderr] 
[INFO] [stderr] warning: this URL is not a hyperlink
[INFO] [stderr]   --> src/lib.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 | //! https://download.wpsoftware.net/bitcoin/wizardry/mimblewimble.txt
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: bare URLs are not automatically turned into clickable links
[INFO] [stderr]    = note: `#[warn(rustdoc::bare_urls)]` on by default
[INFO] [stderr] help: use an automatic link instead
[INFO] [stderr]    |
[INFO] [stderr] 16 | //! <https://download.wpsoftware.net/bitcoin/wizardry/mimblewimble.txt>
[INFO] [stderr]    |     +                                                                 +
[INFO] [stderr] 
[INFO] [stderr] warning: unclosed HTML tag `T`
[INFO] [stderr]   --> src/core/pmmr/vec_backend.rs:26:66
[INFO] [stderr]    |
[INFO] [stderr] 26 | /// Simple/minimal/naive MMR backend implementation backed by Vec<T> and Vec<Hash>.
[INFO] [stderr]    |                                                                  ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(rustdoc::invalid_html_tags)]` on by default
[INFO] [stderr] help: try marking as source code
[INFO] [stderr]    |
[INFO] [stderr] 26 | /// Simple/minimal/naive MMR backend implementation backed by `Vec<T>` and Vec<Hash>.
[INFO] [stderr]    |                                                               +      +
[INFO] [stderr] 
[INFO] [stderr] warning: unclosed HTML tag `Hash`
[INFO] [stderr]   --> src/core/pmmr/vec_backend.rs:26:77
[INFO] [stderr]    |
[INFO] [stderr] 26 | /// Simple/minimal/naive MMR backend implementation backed by Vec<T> and Vec<Hash>.
[INFO] [stderr]    |                                                                             ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: try marking as source code
[INFO] [stderr]    |
[INFO] [stderr] 26 | /// Simple/minimal/naive MMR backend implementation backed by Vec<T> and `Vec<Hash>`.
[INFO] [stderr]    |                                                                          +         +
[INFO] [stderr] 
[INFO] [stderr] warning: unclosed HTML tag `u64`
[INFO] [stderr]   --> src/core/pmmr/vec_backend.rs:27:44
[INFO] [stderr]    |
[INFO] [stderr] 27 | /// Removed pos are maintained in a HashSet<u64>.
[INFO] [stderr]    |                                            ^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: try marking as source code
[INFO] [stderr]    |
[INFO] [stderr] 27 | /// Removed pos are maintained in a `HashSet<u64>`.
[INFO] [stderr]    |                                     +            +
[INFO] [stderr] 
[INFO] [stderr] warning: this URL is not a hyperlink
[INFO] [stderr]    --> src/libtx/secp_ser.rs:253:5
[INFO] [stderr]     |
[INFO] [stderr] 253 | /// https://github.com/serde-rs/json/issues/329
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: bare URLs are not automatically turned into clickable links
[INFO] [stderr] help: use an automatic link instead
[INFO] [stderr]     |
[INFO] [stderr] 253 | /// <https://github.com/serde-rs/json/issues/329>
[INFO] [stderr]     |     +                                           +
[INFO] [stderr] 
[INFO] [stderr] warning: this URL is not a hyperlink
[INFO] [stderr]   --> src/pow/cuckaroo.rs:16:37
[INFO] [stderr]    |
[INFO] [stderr] 16 | //! John Tromp. Ported to Rust from https://github.com/tromp/cuckoo.
[INFO] [stderr]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: bare URLs are not automatically turned into clickable links
[INFO] [stderr] help: use an automatic link instead
[INFO] [stderr]    |
[INFO] [stderr] 16 | //! John Tromp. Ported to Rust from <https://github.com/tromp/cuckoo.>
[INFO] [stderr]    |                                     +                                +
[INFO] [stderr] 
[INFO] [stderr] warning: unclosed HTML tag `u8`
[INFO] [stderr]    --> src/ser.rs:388:8
[INFO] [stderr]     |
[INFO] [stderr] 388 | /// Vec<u8>.
[INFO] [stderr]     |        ^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: try marking as source code
[INFO] [stderr]     |
[INFO] [stderr] 388 | /// `Vec<u8>`.
[INFO] [stderr]     |     +       +
[INFO] [stderr] 
[INFO] [stderr] warning: `stack_test_epic_core` (lib doc) generated 92 warnings (run `cargo fix --lib -p stack_test_epic_core` to apply 9 suggestions)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.25s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bigint v4.4.3, nom v3.2.1, typemap v0.3.3
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr]    Generated /opt/rustwide/target/x86_64-unknown-linux-gnu/doc/stack_test_epic_core/index.html
[INFO] running `Command { std: "docker" "inspect" "11e764a82ecc1214c22b51d4771a9d707b11bfdce9aac10ae137796ab7021760", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "11e764a82ecc1214c22b51d4771a9d707b11bfdce9aac10ae137796ab7021760", kill_on_drop: false }`
[INFO] [stdout] 11e764a82ecc1214c22b51d4771a9d707b11bfdce9aac10ae137796ab7021760