# rustc version rustc 1.99.0-nightly (d0babd8b6 2026-07-15)
# docs.rs version docsrs 0.0.0 (f1b150f0cd76f7cabcd39e1f4790ba771b28b5c4 2026-07-19 )
# build log [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "DOCS_RS=1" "-w" "/opt/rustwide/workdir" "--user" "1001:1001" "9cbf4a530b0eed4422ef9c0305dd7d9ed83c68f7c8f153ea2bf03a18883f49d1" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2026-07-16" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=html-non-static-files\", \"--resource-suffix\", \"-20260715-1.99.0-nightly-d0babd8b6\", \"--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] [stderr] warning: unused imports: `DateTime`, `Local`, and `NaiveDate` [INFO] [stderr] --> src/core/termstructure.rs:1:14 [INFO] [stderr] | [INFO] [stderr] 1 | use chrono::{DateTime, Local, NaiveDate}; [INFO] [stderr] | ^^^^^^^^ ^^^^^ ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `log` [INFO] [stderr] --> src/equity/blackscholes.rs:1:17 [INFO] [stderr] | [INFO] [stderr] 1 | use libm::{exp, log}; [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `PI` and `SQRT_2` [INFO] [stderr] --> src/equity/blackscholes.rs:2:24 [INFO] [stderr] | [INFO] [stderr] 2 | use std::f64::consts::{PI, SQRT_2}; [INFO] [stderr] | ^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `thread` [INFO] [stderr] --> src/equity/blackscholes.rs:3:15 [INFO] [stderr] | [INFO] [stderr] 3 | use std::{io, thread}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Datelike` [INFO] [stderr] --> src/equity/blackscholes.rs:5:14 [INFO] [stderr] | [INFO] [stderr] 5 | use chrono::{Datelike, Local, NaiveDate}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Transection` [INFO] [stderr] --> src/equity/blackscholes.rs:9:37 [INFO] [stderr] | [INFO] [stderr] 9 | use crate::core::trade::{PutOrCall, Transection}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Transection` [INFO] [stderr] --> src/equity/vanila_option.rs:14:36 [INFO] [stderr] | [INFO] [stderr] 14 | use crate::core::trade::{PutOrCall,Transection}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Contract` [INFO] [stderr] --> src/equity/vanila_option.rs:15:26 [INFO] [stderr] | [INFO] [stderr] 15 | use crate::core::utils::{Contract,ContractStyle}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::core::trade` [INFO] [stderr] --> src/equity/vanila_option.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use crate::core::trade; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::core::traits::Instrument` [INFO] [stderr] --> src/equity/montecarlo.rs:49:5 [INFO] [stderr] | [INFO] [stderr] 49 | use crate::core::traits::Instrument; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Engine` [INFO] [stderr] --> src/equity/binomial.rs:3:20 [INFO] [stderr] | [INFO] [stderr] 3 | use super::utils::{Engine, Payoff}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `PutOrCall` and `Transection` [INFO] [stderr] --> src/equity/binomial.rs:4:27 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::core::trade::{ PutOrCall, Transection}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Local`, `NaiveDate`, and `Weekday` [INFO] [stderr] --> src/equity/build_contracts.rs:4:14 [INFO] [stderr] | [INFO] [stderr] 4 | use chrono::{NaiveDate,Local,Weekday}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::Datelike` [INFO] [stderr] --> src/equity/build_contracts.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use chrono::Datelike; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::core::trade` [INFO] [stderr] --> src/equity/build_contracts.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::core::trade; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::super::core::termstructure::YieldTermStructure` [INFO] [stderr] --> src/equity/build_contracts.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use super::super::core::termstructure::YieldTermStructure; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::rates::utils::TermStructure` [INFO] [stderr] --> src/equity/build_contracts.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use crate::rates::utils::TermStructure; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::core::vols::VolSurface` [INFO] [stderr] --> src/equity/build_contracts.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use crate::core::vols::VolSurface; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `DayCountConvention` [INFO] [stderr] --> src/equity/build_contracts.rs:11:27 [INFO] [stderr] | [INFO] [stderr] 11 | use crate::rates::utils::{DayCountConvention}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::core::quotes::Quote` [INFO] [stderr] --> src/equity/build_contracts.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use crate::core::quotes::Quote; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ContractStyle` [INFO] [stderr] --> src/equity/build_contracts.rs:13:35 [INFO] [stderr] | [INFO] [stderr] 13 | use crate::core::utils::{Contract,ContractStyle}; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Engine` and `Payoff` [INFO] [stderr] --> src/equity/build_contracts.rs:14:28 [INFO] [stderr] | [INFO] [stderr] 14 | use crate::equity::utils::{Engine, Payoff}; [INFO] [stderr] | ^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::BTreeMap` [INFO] [stderr] --> src/equity/build_contracts.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use std::collections::BTreeMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Datelike` [INFO] [stderr] --> src/equity/equity_future.rs:2:14 [INFO] [stderr] | [INFO] [stderr] 2 | use chrono::{Datelike, Local, NaiveDate}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ContractStyle` and `Contract` [INFO] [stderr] --> src/equity/equity_future.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::core::utils::{Contract,ContractStyle}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::core::utils::Contract` [INFO] [stderr] --> src/equity/equity_forward.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use crate::core::utils::Contract; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::equity::equity_future::EquityFuture` [INFO] [stderr] --> src/equity/equity_forward.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::equity::equity_future::EquityFuture; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Instrument` [INFO] [stderr] --> src/rates/deposits.rs:2:27 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::core::traits::{Instrument,Rates}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Instrument` [INFO] [stderr] --> src/rates/fra.rs:2:27 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::core::traits::{Instrument,Rates}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `NaiveDate` and `Weekday` [INFO] [stderr] --> src/rates/build_contracts.rs:3:14 [INFO] [stderr] | [INFO] [stderr] 3 | use chrono::{NaiveDate,Local,Weekday}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::Datelike` [INFO] [stderr] --> src/rates/build_contracts.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use chrono::Datelike; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Instrument` [INFO] [stderr] --> src/rates/build_contracts.rs:6:27 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::core::traits::{Instrument,Rates}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Contracts` [INFO] [stderr] --> src/rates/build_contracts.rs:7:36 [INFO] [stderr] | [INFO] [stderr] 7 | use crate::core::utils::{Contract, Contracts}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stderr] --> src/utils/parse_contracts.rs:1:13 [INFO] [stderr] | [INFO] [stderr] 1 | use serde::{Deserialize, Serialize}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BigEndian`, `ByteOrder`, and `LittleEndian` [INFO] [stderr] --> src/utils/parse_contracts.rs:4:17 [INFO] [stderr] | [INFO] [stderr] 4 | use byteorder::{ByteOrder, LittleEndian,BigEndian}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Datelike` and `NaiveDate` [INFO] [stderr] --> src/utils/parse_contracts.rs:6:14 [INFO] [stderr] | [INFO] [stderr] 6 | use chrono::{Datelike, Local, NaiveDate}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::core::quotes::Quote` [INFO] [stderr] --> src/utils/parse_contracts.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use crate::core::quotes::Quote; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Engine` [INFO] [stderr] --> src/utils/parse_contracts.rs:12:28 [INFO] [stderr] | [INFO] [stderr] 12 | use crate::equity::utils::{Engine}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::core::trade` [INFO] [stderr] --> src/utils/parse_contracts.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use crate::core::trade; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::cmdty::cmdty_option` [INFO] [stderr] --> src/utils/parse_contracts.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use crate::cmdty::cmdty_option; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Instrument` [INFO] [stderr] --> src/utils/parse_contracts.rs:16:27 [INFO] [stderr] | [INFO] [stderr] 16 | use crate::core::traits::{Instrument, Rates}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `CombinedContract`, `ContractOutput`, `EngineType`, and `OutputJson` [INFO] [stderr] --> src/utils/parse_contracts.rs:17:35 [INFO] [stderr] | [INFO] [stderr] 17 | use crate::core::utils::{Contract,CombinedContract, ContractOutput, Contracts, OutputJson,EngineType}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::core::utils::ContractStyle` [INFO] [stderr] --> src/utils/parse_contracts.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | use crate::core::utils::ContractStyle; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::core::traits::Greeks` [INFO] [stderr] --> src/utils/parse_contracts.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | use crate::core::traits::Greeks; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env::temp_dir` [INFO] [stderr] --> src/utils/parse_contracts.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use std::env::temp_dir; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `build_ir_contracts` [INFO] [stderr] --> src/utils/parse_contracts.rs:25:37 [INFO] [stderr] | [INFO] [stderr] 25 | use crate::rates::build_contracts::{build_ir_contracts, build_ir_contracts_from_json, build_term_structure}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::core::vols::VolSurface` [INFO] [stderr] --> src/utils/parse_contracts.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | use crate::core::vols::VolSurface; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `quick_xml::events::attributes::Attribute::<'a>::unescape_value`: use `Self::normalized_value()` [INFO] [stderr] --> src/core/serialization.rs:171:18 [INFO] [stderr] | [INFO] [stderr] 171 | .unescape_value() [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::NaiveDate::succ`: use `succ_opt()` instead [INFO] [stderr] --> src/rates/utils.rs:40:21 [INFO] [stderr] | [INFO] [stderr] 40 | date = date.succ(); [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable statement [INFO] [stderr] --> src/utils/parse_contracts.rs:223:5 [INFO] [stderr] | [INFO] [stderr] 131 | return handle_equity_contract(data); [INFO] [stderr] | ----------------------------------- any code following this expression is unreachable [INFO] [stderr] ... [INFO] [stderr] 223 | return serde_json::Value::String("Invalid Action".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Payoff` [INFO] [stderr] --> src/equity/montecarlo.rs:39:39 [INFO] [stderr] | [INFO] [stderr] 39 | use super::utils::{Engine, LongShort, Payoff}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Payoff` [INFO] [stderr] --> src/equity/blackscholes.rs:13:40 [INFO] [stderr] | [INFO] [stderr] 13 | use super::utils::{Engine, PayoffType, Payoff, LongShort}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Greeks` [INFO] [stderr] --> src/equity/blackscholes.rs:17:45 [INFO] [stderr] | [INFO] [stderr] 17 | use super::super::core::traits::{Instrument,Greeks}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Payoff` [INFO] [stderr] --> src/equity/binomial.rs:3:28 [INFO] [stderr] | [INFO] [stderr] 3 | use super::utils::{Engine, Payoff}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::error::Error` [INFO] [stderr] --> src/equity/vanila_option.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::error::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Datelike` [INFO] [stderr] --> src/equity/vanila_option.rs:2:14 [INFO] [stderr] | [INFO] [stderr] 2 | use chrono::{Datelike, Local, NaiveDate}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Greeks` [INFO] [stderr] --> src/equity/vanila_option.rs:11:45 [INFO] [stderr] | [INFO] [stderr] 11 | use super::super::core::traits::{Instrument,Greeks}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde::Deserialize` [INFO] [stderr] --> src/equity/vanila_option.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | use serde::Deserialize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/equity/vanila_option.rs:600:13 [INFO] [stderr] | [INFO] [stderr] 600 | let mut pay_off = self.payoff.payoff_amount(&self.base); [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pay` [INFO] [stderr] --> src/equity/montecarlo.rs:901:21 [INFO] [stderr] | [INFO] [stderr] 901 | let pay = option.payoff.payoff(s, p.strike); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_pay` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/equity/binomial.rs:55:9 [INFO] [stderr] | [INFO] [stderr] 55 | _ => { [INFO] [stderr] | ^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/equity/binomial.rs:55:9 [INFO] [stderr] | [INFO] [stderr] 35 | ContractStyle::European => { [INFO] [stderr] | ----------------------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 44 | ContractStyle::American => { [INFO] [stderr] | ----------------------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 55 | _ => { [INFO] [stderr] | ^ collectively making this unreachable [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/equity/equity_future.rs:88:13 [INFO] [stderr] | [INFO] [stderr] 88 | _=>0.0, [INFO] [stderr] | ^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/equity/equity_future.rs:88:13 [INFO] [stderr] | [INFO] [stderr] 86 | LongShort::LONG => pnl, [INFO] [stderr] | --------------- matches some of the same values [INFO] [stderr] 87 | LongShort::SHORT => -pnl, [INFO] [stderr] | ---------------- matches some of the same values [INFO] [stderr] 88 | _=>0.0, [INFO] [stderr] | ^ collectively making this unreachable [INFO] [stderr] [INFO] [stderr] warning: unused variable: `notional` [INFO] [stderr] --> src/rates/deposits.rs:34:60 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn builder(start_date: String,maturity_date:String,notional: f64, fix_rate: f64,day_count: String) ->Deposit{ [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_notional` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `fix_rate` [INFO] [stderr] --> src/rates/deposits.rs:34:75 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn builder(start_date: String,maturity_date:String,notional: f64, fix_rate: f64,day_count: String) ->Deposit{ [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fix_rate` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/rates/utils.rs:144:13 [INFO] [stderr] | [INFO] [stderr] 144 | let mut term_structure = TermStructure::new(dates,discount_factor,rate,day_count); [INFO] [stderr] | ----^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `valuation_date` [INFO] [stderr] --> src/rates/utils.rs:134:39 [INFO] [stderr] | [INFO] [stderr] 134 | pub fn build_term_structure(&self,valuation_date:NaiveDate,deposits:Vec<Deposit>) -> TermStructure { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_valuation_date` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/rates/build_contracts.rs:12:9 [INFO] [stderr] | [INFO] [stderr] 12 | let mut start_date_str = rate_data.start_date; // Only for 0M case [INFO] [stderr] | ----^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/rates/build_contracts.rs:13:9 [INFO] [stderr] | [INFO] [stderr] 13 | let mut maturity_date_str = rate_data.maturity_date; [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/rates/build_contracts.rs:40:13 [INFO] [stderr] | [INFO] [stderr] 40 | let mut ird:Box<dyn Rates> = Box::new(deposit); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/rates/build_contracts.rs:91:9 [INFO] [stderr] | [INFO] [stderr] 91 | let mut contract = contracts[0].as_mut(); [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/rates/build_contracts.rs:96:13 [INFO] [stderr] | [INFO] [stderr] 96 | let mut contract = contracts[i].as_mut(); [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/rates/term_structure.rs:469:9 [INFO] [stderr] | [INFO] [stderr] 469 | let mut m = vec![0.0_f64; n]; // second derivatives (moments) [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/rates/term_structure.rs:475:9 [INFO] [stderr] | [INFO] [stderr] 475 | let mut h: Vec<f64> = (0..n - 1).map(|i| xs[i + 1] - xs[i]).collect(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/rates/term_structure.rs:482:9 [INFO] [stderr] | [INFO] [stderr] 482 | let mut d = vec![0.0_f64; n]; [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `d` [INFO] [stderr] --> src/rates/term_structure.rs:482:9 [INFO] [stderr] | [INFO] [stderr] 482 | let mut d = vec![0.0_f64; n]; [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_d` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `t` [INFO] [stderr] --> src/rates/term_structure.rs:508:9 [INFO] [stderr] | [INFO] [stderr] 508 | let t = (x - xs[i]) / h; [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/utils/parse_contracts.rs:78:13 [INFO] [stderr] | [INFO] [stderr] 78 | let mut contracts:Vec<Box<dyn Rates>> = build_ir_contracts_from_json(list_contracts.contracts); [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/utils/parse_contracts.rs:188:13 [INFO] [stderr] | [INFO] [stderr] 188 | let mut start_date_str = rate_data.start_date; // Only for 0M case [INFO] [stderr] | ----^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/utils/parse_contracts.rs:189:13 [INFO] [stderr] | [INFO] [stderr] 189 | let mut maturity_date_str = rate_data.maturity_date; [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ts` [INFO] [stderr] --> src/utils/parse_contracts.rs:128:9 [INFO] [stderr] | [INFO] [stderr] 128 | let ts = YieldTermStructure::new(date,rates); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_ts` [INFO] [stderr] [INFO] [stderr] warning: field `x` is never read [INFO] [stderr] --> src/core/interpolation.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 11 | pub struct SplineSet{ [INFO] [stderr] | --------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 16 | x:f64, [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: methods `notional`, `time_to_maturity`, `premiun`, and `forward_price` are never used [INFO] [stderr] --> src/equity/equity_future.rs:73:8 [INFO] [stderr] | [INFO] [stderr] 33 | impl EquityFuture { [INFO] [stderr] | ----------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 73 | fn notional(&self) -> f64 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 76 | fn time_to_maturity(&self) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 80 | fn premiun(&self)->f64{ [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 91 | fn forward_price(&self)->f64{ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `premiun` is never used [INFO] [stderr] --> src/equity/equity_forward.rs:77:8 [INFO] [stderr] | [INFO] [stderr] 32 | impl EquityForward { [INFO] [stderr] | ------------------ method in this implementation [INFO] [stderr] ... [INFO] [stderr] 77 | fn premiun(&self)->f64{ [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `is_weekend` is never used [INFO] [stderr] --> src/rates/utils.rs:6:4 [INFO] [stderr] | [INFO] [stderr] 6 | fn is_weekend(date: NaiveDate) -> bool { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `dN` should have a snake case name [INFO] [stderr] --> src/core/utils.rs:114:8 [INFO] [stderr] | [INFO] [stderr] 114 | pub fn dN(x: f64) -> f64 { [INFO] [stderr] | ^^ help: convert the identifier to snake case: `d_n` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: function `N` should have a snake case name [INFO] [stderr] --> src/core/utils.rs:120:8 [INFO] [stderr] | [INFO] [stderr] 120 | pub fn N(x: f64) -> f64 { [INFO] [stderr] | ^ help: convert the identifier to snake case: `n` [INFO] [stderr] [INFO] [stderr] warning: function `inv_N` should have a snake case name [INFO] [stderr] --> src/core/utils.rs:129:8 [INFO] [stderr] | [INFO] [stderr] 129 | pub fn inv_N(p: f64) -> f64 { [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `inv_n` [INFO] [stderr] [INFO] [stderr] warning: variable `df_S` should have a snake case name [INFO] [stderr] --> src/equity/blackscholes.rs:187:13 [INFO] [stderr] | [INFO] [stderr] 187 | let df_S = bsd_option.base.effective_spot() * df_d; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case (notice the capitalization): `df_s` [INFO] [stderr] [INFO] [stderr] warning: variable `df_S` should have a snake case name [INFO] [stderr] --> src/equity/blackscholes.rs:202:13 [INFO] [stderr] | [INFO] [stderr] 202 | let df_S = bsd_option.base.effective_spot() * df_d; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case (notice the capitalization): `df_s` [INFO] [stderr] [INFO] [stderr] warning: module `RNG` should have a snake case name [INFO] [stderr] --> src/utils/mod.rs:2:9 [INFO] [stderr] | [INFO] [stderr] 2 | pub mod RNG; [INFO] [stderr] | ^^^ help: convert the identifier to snake case: `rng` [INFO] [stderr] [INFO] [stderr] warning: `RustyQLib` (lib) generated 90 warnings (run `cargo fix --lib -p RustyQLib` to apply 67 suggestions) [INFO] [stderr] Scraping RustyQLib v0.0.2 (/opt/rustwide/workdir) [INFO] [stderr] Documenting RustyQLib v0.0.2 (/opt/rustwide/workdir) [INFO] [stderr] warning: unresolved link to `forward_price` [INFO] [stderr] --> src/equity/vanila_option.rs:545:11 [INFO] [stderr] | [INFO] [stderr] 545 | /// [`forward_price`]). This makes the analytic forward match the [INFO] [stderr] | ^^^^^^^^^^^^^ no item named `forward_price` 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: this URL is not a hyperlink [INFO] [stderr] --> src/equity/finite_difference.rs:406:5 [INFO] [stderr] | [INFO] [stderr] 406 | /// https://en.wikipedia.org/wiki/Tridiagonal_matrix_algorithm [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] 406 | /// <https://en.wikipedia.org/wiki/Tridiagonal_matrix_algorithm> [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: `RustyQLib` (lib doc) generated 2 warnings (run `cargo fix --lib -p RustyQLib` to apply 1 suggestion) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.45s [INFO] [stderr] Generated /opt/rustwide/target/x86_64-unknown-linux-gnu/doc/rustyqlib/index.html [INFO] running `Command { std: "docker" "inspect" "9cbf4a530b0eed4422ef9c0305dd7d9ed83c68f7c8f153ea2bf03a18883f49d1", kill_on_drop: false }`