[INFO] crate quantmath 0.1.0 is already in cache [INFO] extracting crate quantmath 0.1.0 into work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/reg/quantmath/0.1.0 [INFO] extracting crate quantmath 0.1.0 into work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/reg/quantmath/0.1.0 [INFO] validating manifest of quantmath-0.1.0 on toolchain master#60960a260f7b5c695fd0717311d72ce62dd4eb43 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of quantmath-0.1.0 on toolchain try#266783e4e09e4e9d5307c1c8e695659c58bbcac7 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing quantmath-0.1.0 [INFO] finished frobbing quantmath-0.1.0 [INFO] frobbed toml for quantmath-0.1.0 written to work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/reg/quantmath/0.1.0/Cargo.toml [INFO] started frobbing quantmath-0.1.0 [INFO] finished frobbing quantmath-0.1.0 [INFO] frobbed toml for quantmath-0.1.0 written to work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/reg/quantmath/0.1.0/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] checking quantmath-0.1.0 against master#60960a260f7b5c695fd0717311d72ce62dd4eb43 for pr-63376 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-63376/worker-4/master#60960a260f7b5c695fd0717311d72ce62dd4eb43:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/reg/quantmath/0.1.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 11c8545619eabbcf27d6e8f53cef51349b956f11854dfd97907a5ce52dc67cd9 [INFO] running `"docker" "start" "-a" "11c8545619eabbcf27d6e8f53cef51349b956f11854dfd97907a5ce52dc67cd9"` [INFO] [stderr] Checking approx v0.2.1 [INFO] [stderr] Checking serde_tagged v0.2.0 [INFO] [stderr] Checking ndarray v0.11.2 [INFO] [stderr] Checking statrs v0.9.0 [INFO] [stderr] Checking alga v0.6.0 [INFO] [stderr] Checking nalgebra v0.15.3 [INFO] [stderr] warning[E0502]: cannot borrow `*self` as immutable because it is also borrowed as mutable [INFO] [stderr] --> /opt/crater/cargo-home/registry/src/github.com-1ecc6299db9ec823/nalgebra-0.15.3/src/base/cg.rs:292:44 [INFO] [stderr] | [INFO] [stderr] 292 | self[(j, i)] += shift[j] * self[(D::dim() - 1, i)]; [INFO] [stderr] | ---------------------------^^^^------------------- [INFO] [stderr] | | | [INFO] [stderr] | | immutable borrow occurs here [INFO] [stderr] | mutable borrow occurs here [INFO] [stderr] | mutable borrow later used here [INFO] [stderr] | [INFO] [stderr] = warning: this error has been downgraded to a warning for backwards compatibility with previous releases [INFO] [stderr] = warning: this represents potential undefined behavior in your code and this warning will become a hard error in the future [INFO] [stderr] = note: for more information, try `rustc --explain E0729` [INFO] [stderr] [INFO] [stderr] Checking quantmath v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/instruments/mod.rs:240:1 [INFO] [stderr] | [INFO] [stderr] 240 | /// Support for deduplication of instruments when serializing and deserializing [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 241 | [INFO] [stderr] 242 | / thread_local! { [INFO] [stderr] 243 | | pub static DEDUP_INSTRUMENT : RefCell>> [INFO] [stderr] 244 | | = RefCell::new(Dedup::new(DedupControl::Inline, HashMap::new())); [INFO] [stderr] 245 | | } [INFO] [stderr] | |_- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/instruments/mod.rs:240:1 [INFO] [stderr] | [INFO] [stderr] 240 | /// Support for deduplication of instruments when serializing and deserializing [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 241 | [INFO] [stderr] 242 | / thread_local! { [INFO] [stderr] 243 | | pub static DEDUP_INSTRUMENT : RefCell>> [INFO] [stderr] 244 | | = RefCell::new(Dedup::new(DedupControl::Inline, HashMap::new())); [INFO] [stderr] 245 | | } [INFO] [stderr] | |_- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/calendar.rs:86:27 [INFO] [stderr] | [INFO] [stderr] 86 | pub type RcCalendar = Qrc; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Calendar` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/calendar.rs:125:38 [INFO] [stderr] | [INFO] [stderr] 125 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/calendar.rs:180:38 [INFO] [stderr] | [INFO] [stderr] 180 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/calendar.rs:306:38 [INFO] [stderr] | [INFO] [stderr] 306 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/calendar.rs:503:38 [INFO] [stderr] | [INFO] [stderr] 503 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/rules.rs:27:27 [INFO] [stderr] | [INFO] [stderr] 27 | pub type RcDateRule = Qrc; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn DateRule` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/rules.rs:68:38 [INFO] [stderr] | [INFO] [stderr] 68 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/rules.rs:121:38 [INFO] [stderr] | [INFO] [stderr] 121 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/rules.rs:148:38 [INFO] [stderr] | [INFO] [stderr] 148 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/curves.rs:62:28 [INFO] [stderr] | [INFO] [stderr] 62 | pub type RcRateCurve = Qrc; [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn RateCurve` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/curves.rs:113:38 [INFO] [stderr] | [INFO] [stderr] 113 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/curves.rs:168:38 [INFO] [stderr] | [INFO] [stderr] 168 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/curves.rs:214:38 [INFO] [stderr] | [INFO] [stderr] 214 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/curves.rs:248:38 [INFO] [stderr] | [INFO] [stderr] 248 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/curves.rs:282:38 [INFO] [stderr] | [INFO] [stderr] 282 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/divstream.rs:198:52 [INFO] [stderr] | [INFO] [stderr] 198 | pub fn new(div_stream: &DividendStream, rate: &RateCurve, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn RateCurve` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/divstream.rs:199:18 [INFO] [stderr] | [INFO] [stderr] 199 | borrow: &RateCurve, spot: f64, base_date: Date, high_water_mark: Date) [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn RateCurve` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:16:29 [INFO] [stderr] | [INFO] [stderr] 16 | fn as_interp(&self) -> &Interpolate; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:45:29 [INFO] [stderr] | [INFO] [stderr] 45 | fn as_interp(&self) -> &Interpolate { self } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:63:17 [INFO] [stderr] | [INFO] [stderr] 63 | interp: Box> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:67:29 [INFO] [stderr] | [INFO] [stderr] 67 | fn as_interp(&self) -> &Interpolate { self } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:75:28 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn new(interp: Box>) -> InterpolatedForward { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:93:29 [INFO] [stderr] | [INFO] [stderr] 93 | fn as_interp(&self) -> &Interpolate { self } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:167:36 [INFO] [stderr] | [INFO] [stderr] 167 | pub fn discount_with_borrow(rate: &RateCurve, borrow: &RateCurve, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn RateCurve` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:167:56 [INFO] [stderr] | [INFO] [stderr] 167 | pub fn discount_with_borrow(rate: &RateCurve, borrow: &RateCurve, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn RateCurve` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:177:40 [INFO] [stderr] | [INFO] [stderr] 177 | pub fn log_discount_with_borrow(rate: &RateCurve, borrow: &RateCurve, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn RateCurve` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:177:60 [INFO] [stderr] | [INFO] [stderr] 177 | pub fn log_discount_with_borrow(rate: &RateCurve, borrow: &RateCurve, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn RateCurve` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:37:38 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:69:34 [INFO] [stderr] | [INFO] [stderr] 69 | fn forward(&self) -> Option<&Interpolate> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:109:38 [INFO] [stderr] | [INFO] [stderr] 109 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:146:34 [INFO] [stderr] | [INFO] [stderr] 146 | fn forward(&self) -> Option<&Interpolate> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:182:38 [INFO] [stderr] | [INFO] [stderr] 182 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:208:34 [INFO] [stderr] | [INFO] [stderr] 208 | fn forward(&self) -> Option<&Interpolate> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:249:38 [INFO] [stderr] | [INFO] [stderr] 249 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:276:34 [INFO] [stderr] | [INFO] [stderr] 276 | fn forward(&self) -> Option<&Interpolate> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:303:25 [INFO] [stderr] | [INFO] [stderr] 303 | bumped_forward: Arc [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:311:60 [INFO] [stderr] | [INFO] [stderr] 311 | pub fn new(base_vol: RcVolSurface, bumped_forward: Arc) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:361:34 [INFO] [stderr] | [INFO] [stderr] 361 | fn forward(&self) -> Option<&Interpolate> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:65:34 [INFO] [stderr] | [INFO] [stderr] 65 | fn forward(&self) -> Option<&Interpolate>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:235:29 [INFO] [stderr] | [INFO] [stderr] 235 | pub type RcVolSurface = Qrc; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn VolSurface` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:360:22 [INFO] [stderr] | [INFO] [stderr] 360 | forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Result, qm::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:360:41 [INFO] [stderr] | [INFO] [stderr] 360 | forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:437:34 [INFO] [stderr] | [INFO] [stderr] 437 | fn forward(&self) -> Option<&Interpolate> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:473:38 [INFO] [stderr] | [INFO] [stderr] 473 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:579:34 [INFO] [stderr] | [INFO] [stderr] 579 | fn forward(&self) -> Option<&Interpolate> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:800:38 [INFO] [stderr] | [INFO] [stderr] 800 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:816:34 [INFO] [stderr] | [INFO] [stderr] 816 | fn forward(&self) -> Option<&Interpolate> { self.0.forward() } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:854:38 [INFO] [stderr] | [INFO] [stderr] 854 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:870:34 [INFO] [stderr] | [INFO] [stderr] 870 | fn forward(&self) -> Option<&Interpolate> { self.0.forward() } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:45:38 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:45:76 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:73:42 [INFO] [stderr] | [INFO] [stderr] 73 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:80:39 [INFO] [stderr] | [INFO] [stderr] 80 | fn as_priceable(&self) -> Option<&Priceable> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:118:33 [INFO] [stderr] | [INFO] [stderr] 118 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:124:33 [INFO] [stderr] | [INFO] [stderr] 124 | fn prices(&self, _context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:135:49 [INFO] [stderr] | [INFO] [stderr] 135 | pub fn dependence_on_spot_discount(instrument: &Instrument, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:136:19 [INFO] [stderr] | [INFO] [stderr] 136 | context: &mut DependencyContext) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:202:38 [INFO] [stderr] | [INFO] [stderr] 202 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:202:76 [INFO] [stderr] | [INFO] [stderr] 202 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:221:42 [INFO] [stderr] | [INFO] [stderr] 221 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:239:39 [INFO] [stderr] | [INFO] [stderr] 239 | fn as_priceable(&self) -> Option<&Priceable> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:277:33 [INFO] [stderr] | [INFO] [stderr] 277 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:281:32 [INFO] [stderr] | [INFO] [stderr] 281 | fn prices(&self, context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:326:38 [INFO] [stderr] | [INFO] [stderr] 326 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:326:76 [INFO] [stderr] | [INFO] [stderr] 326 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:350:42 [INFO] [stderr] | [INFO] [stderr] 350 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:357:39 [INFO] [stderr] | [INFO] [stderr] 357 | fn as_priceable(&self) -> Option<&Priceable> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:395:33 [INFO] [stderr] | [INFO] [stderr] 395 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:399:32 [INFO] [stderr] | [INFO] [stderr] 399 | fn prices(&self, _context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:58:38 [INFO] [stderr] | [INFO] [stderr] 58 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:58:76 [INFO] [stderr] | [INFO] [stderr] 58 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:80:42 [INFO] [stderr] | [INFO] [stderr] 80 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:94:39 [INFO] [stderr] | [INFO] [stderr] 94 | fn as_priceable(&self) -> Option<&Priceable> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:120:33 [INFO] [stderr] | [INFO] [stderr] 120 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:124:32 [INFO] [stderr] | [INFO] [stderr] 124 | fn prices(&self, context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:88:32 [INFO] [stderr] | [INFO] [stderr] 88 | fn prices(&self, context: &PricingContext, dates: &[DateTime], out: &mut [f64], [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:90:30 [INFO] [stderr] | [INFO] [stderr] 90 | strike_and_forward: &Fn(&Priceable) -> Result<(f64, f64), qm::Error>) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Priceable) -> Result<(f64, f64), qm::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:90:34 [INFO] [stderr] | [INFO] [stderr] 90 | strike_and_forward: &Fn(&Priceable) -> Result<(f64, f64), qm::Error>) [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:246:38 [INFO] [stderr] | [INFO] [stderr] 246 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:246:76 [INFO] [stderr] | [INFO] [stderr] 246 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:276:38 [INFO] [stderr] | [INFO] [stderr] 276 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:276:76 [INFO] [stderr] | [INFO] [stderr] 276 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:304:42 [INFO] [stderr] | [INFO] [stderr] 304 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:336:42 [INFO] [stderr] | [INFO] [stderr] 336 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:338:39 [INFO] [stderr] | [INFO] [stderr] 338 | fn as_priceable(&self) -> Option<&Priceable> { Some(self) } [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:339:42 [INFO] [stderr] | [INFO] [stderr] 339 | fn as_mc_priceable(&self) -> Option<&MonteCarloPriceable> { Some(self) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloPriceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:401:39 [INFO] [stderr] | [INFO] [stderr] 401 | fn as_priceable(&self) -> Option<&Priceable> { Some(self) } [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:402:42 [INFO] [stderr] | [INFO] [stderr] 402 | fn as_mc_priceable(&self) -> Option<&MonteCarloPriceable> { Some(self) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloPriceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:404:42 [INFO] [stderr] | [INFO] [stderr] 404 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:443:33 [INFO] [stderr] | [INFO] [stderr] 443 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:446:32 [INFO] [stderr] | [INFO] [stderr] 446 | fn prices(&self, context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:456:33 [INFO] [stderr] | [INFO] [stderr] 456 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:461:32 [INFO] [stderr] | [INFO] [stderr] 461 | fn prices(&self, context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:480:33 [INFO] [stderr] | [INFO] [stderr] 480 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:483:22 [INFO] [stderr] | [INFO] [stderr] 483 | output: &mut MonteCarloDependencies) -> Result<(), qm::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloDependencies` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:507:34 [INFO] [stderr] | [INFO] [stderr] 507 | fn mc_price(&self, context: &MonteCarloContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:545:33 [INFO] [stderr] | [INFO] [stderr] 545 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:548:22 [INFO] [stderr] | [INFO] [stderr] 548 | output: &mut MonteCarloDependencies) -> Result<(), qm::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloDependencies` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:573:34 [INFO] [stderr] | [INFO] [stderr] 573 | fn mc_price(&self, context: &MonteCarloContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:58:38 [INFO] [stderr] | [INFO] [stderr] 58 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:58:76 [INFO] [stderr] | [INFO] [stderr] 58 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:68:42 [INFO] [stderr] | [INFO] [stderr] 68 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:92:39 [INFO] [stderr] | [INFO] [stderr] 92 | fn as_priceable(&self) -> Option<&Priceable> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:144:33 [INFO] [stderr] | [INFO] [stderr] 144 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:147:32 [INFO] [stderr] | [INFO] [stderr] 147 | fn prices(&self, context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:71:42 [INFO] [stderr] | [INFO] [stderr] 71 | fn dependencies(&self, context: &mut DependencyContext) -> SpotRequirement; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:125:39 [INFO] [stderr] | [INFO] [stderr] 125 | fn as_priceable(&self) -> Option<&Priceable> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:130:42 [INFO] [stderr] | [INFO] [stderr] 130 | fn as_mc_priceable(&self) -> Option<&MonteCarloPriceable> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloPriceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:180:48 [INFO] [stderr] | [INFO] [stderr] 180 | pub type TypeRegistry = Registry>>; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:183:40 [INFO] [stderr] | [INFO] [stderr] 183 | impl<'de> sd::Deserialize<'de> for Qrc { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:212:29 [INFO] [stderr] | [INFO] [stderr] 212 | pub type RcInstrument = Drc>; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:212:45 [INFO] [stderr] | [INFO] [stderr] 212 | pub type RcInstrument = Drc>; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:243:49 [INFO] [stderr] | [INFO] [stderr] 243 | pub static DEDUP_INSTRUMENT : RefCell>> [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:243:65 [INFO] [stderr] | [INFO] [stderr] 243 | pub static DEDUP_INSTRUMENT : RefCell>> [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:257:28 [INFO] [stderr] | [INFO] [stderr] 257 | let qrc : &Qrc = self.content(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:300:26 [INFO] [stderr] | [INFO] [stderr] 300 | let obj: Qrc = sd::de::Deserialize::deserialize(sd::de::value::MapAccessDeserializer::new(visitor))?; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:383:40 [INFO] [stderr] | [INFO] [stderr] 383 | fn new_dated(&self, date: Date) -> Dated; [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Dated` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:423:31 [INFO] [stderr] | [INFO] [stderr] 423 | fn price(&self, context: &PricingContext, val_date: DateTime) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:435:32 [INFO] [stderr] | [INFO] [stderr] 435 | fn prices(&self, context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:440:33 [INFO] [stderr] | [INFO] [stderr] 440 | fn as_instrument(&self) -> &Instrument; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:447:20 [INFO] [stderr] | [INFO] [stderr] 447 | priceable: &'a Priceable, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:448:18 [INFO] [stderr] | [INFO] [stderr] 448 | context: &'a PricingContext, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:453:31 [INFO] [stderr] | [INFO] [stderr] 453 | pub fn new(priceable: &'a Priceable, context: &'a PricingContext, time_of_day: TimeOfDay) [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:453:55 [INFO] [stderr] | [INFO] [stderr] 453 | pub fn new(priceable: &'a Priceable, context: &'a PricingContext, time_of_day: TimeOfDay) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:460:29 [INFO] [stderr] | [INFO] [stderr] 460 | fn as_interp(&self) -> &Interpolate { self } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:487:42 [INFO] [stderr] | [INFO] [stderr] 487 | fn forward_curve(&self, instrument: &Instrument, high_water_mark: Date) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:488:23 [INFO] [stderr] | [INFO] [stderr] 488 | -> Result, qm::Error>; [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:493:40 [INFO] [stderr] | [INFO] [stderr] 493 | fn vol_surface(&self, instrument: &Instrument, high_water_mark: Date, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:494:22 [INFO] [stderr] | [INFO] [stderr] 494 | forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Result, qm::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:494:41 [INFO] [stderr] | [INFO] [stderr] 494 | forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:507:35 [INFO] [stderr] | [INFO] [stderr] 507 | fn correlation(&self, first: &Instrument, second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:507:56 [INFO] [stderr] | [INFO] [stderr] 507 | fn correlation(&self, first: &Instrument, second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:539:22 [INFO] [stderr] | [INFO] [stderr] 539 | output: &mut MonteCarloDependencies) -> Result<(), qm::Error>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloDependencies` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:556:34 [INFO] [stderr] | [INFO] [stderr] 556 | fn mc_price(&self, context: &MonteCarloContext) -> Result; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:559:33 [INFO] [stderr] | [INFO] [stderr] 559 | fn as_instrument(&self) -> &Instrument; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:608:35 [INFO] [stderr] | [INFO] [stderr] 608 | fn pricing_context(&self) -> &PricingContext; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:111:29 [INFO] [stderr] | [INFO] [stderr] 111 | let instr: &Instrument = &*instrument.clone(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:188:42 [INFO] [stderr] | [INFO] [stderr] 188 | fn forward_curve(&self, instrument: &Instrument, high_water_mark: Date) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:189:23 [INFO] [stderr] | [INFO] [stderr] 189 | -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:215:40 [INFO] [stderr] | [INFO] [stderr] 215 | fn vol_surface(&self, instrument: &Instrument, _high_water_mark: Date, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:216:22 [INFO] [stderr] | [INFO] [stderr] 216 | forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Result, qm::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:216:41 [INFO] [stderr] | [INFO] [stderr] 216 | forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:228:36 [INFO] [stderr] | [INFO] [stderr] 228 | fn correlation(&self, _first: &Instrument, _second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:228:58 [INFO] [stderr] | [INFO] [stderr] 228 | fn correlation(&self, _first: &Instrument, _second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:246:55 [INFO] [stderr] | [INFO] [stderr] 246 | fn bump(&mut self, bump: &Bump, save: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:276:35 [INFO] [stderr] | [INFO] [stderr] 276 | fn new_saveable(&self) -> Box { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:280:27 [INFO] [stderr] | [INFO] [stderr] 280 | fn context(&self) -> &PricingContext { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:284:39 [INFO] [stderr] | [INFO] [stderr] 284 | fn restore(&mut self, any_saved: &Saveable) -> Result<(), qm::Error> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:301:31 [INFO] [stderr] | [INFO] [stderr] 301 | fn as_bumpable(&self) -> &Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:302:43 [INFO] [stderr] | [INFO] [stderr] 302 | fn as_mut_bumpable(&mut self) -> &mut Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:303:38 [INFO] [stderr] | [INFO] [stderr] 303 | fn as_pricing_context(&self) -> &PricingContext { self } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:307:40 [INFO] [stderr] | [INFO] [stderr] 307 | fn to_saved_data(opt_save: Option<&mut Saveable>) -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:320:42 [INFO] [stderr] | [INFO] [stderr] 320 | fn apply_bump(id: &str, bump: &Bumper, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Bumper` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:374:26 [INFO] [stderr] | [INFO] [stderr] 374 | fn as_any(&self) -> &Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:375:38 [INFO] [stderr] | [INFO] [stderr] 375 | fn as_mut_any(&mut self) -> &mut Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:29:41 [INFO] [stderr] | [INFO] [stderr] 29 | forward_curves: HashMap>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:73:63 [INFO] [stderr] | [INFO] [stderr] 73 | saved_forward_curves: Option<&mut HashMap>>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:88:34 [INFO] [stderr] | [INFO] [stderr] 88 | let instrument: &Instrument = &*inst.clone(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:143:46 [INFO] [stderr] | [INFO] [stderr] 143 | forward_curves: &mut HashMap>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:153:27 [INFO] [stderr] | [INFO] [stderr] 153 | let instrument : &Instrument = rc_instrument.deref(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:188:42 [INFO] [stderr] | [INFO] [stderr] 188 | fn forward_curve(&self, instrument: &Instrument, _high_water_mark: Date) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:189:23 [INFO] [stderr] | [INFO] [stderr] 189 | -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:196:40 [INFO] [stderr] | [INFO] [stderr] 196 | fn vol_surface(&self, instrument: &Instrument, _high_water_mark: Date, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:197:23 [INFO] [stderr] | [INFO] [stderr] 197 | _forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Result, qm::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:197:42 [INFO] [stderr] | [INFO] [stderr] 197 | _forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:202:35 [INFO] [stderr] | [INFO] [stderr] 202 | fn correlation(&self, first: &Instrument, second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:202:56 [INFO] [stderr] | [INFO] [stderr] 202 | fn correlation(&self, first: &Instrument, second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:224:60 [INFO] [stderr] | [INFO] [stderr] 224 | fn bump(&mut self, bump: &Bump, any_saved: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:235:28 [INFO] [stderr] | [INFO] [stderr] 235 | : (Option<&mut Saveable> [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:236:47 [INFO] [stderr] | [INFO] [stderr] 236 | , Option<&mut HashMap>> [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:297:27 [INFO] [stderr] | [INFO] [stderr] 297 | fn context(&self) -> &PricingContext { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:301:35 [INFO] [stderr] | [INFO] [stderr] 301 | fn new_saveable(&self) -> Box { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:305:39 [INFO] [stderr] | [INFO] [stderr] 305 | fn restore(&mut self, any_saved: &Saveable) -> Result<(), qm::Error> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:325:31 [INFO] [stderr] | [INFO] [stderr] 325 | fn as_bumpable(&self) -> &Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:326:43 [INFO] [stderr] | [INFO] [stderr] 326 | fn as_mut_bumpable(&mut self) -> &mut Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:327:38 [INFO] [stderr] | [INFO] [stderr] 327 | fn as_pricing_context(&self) -> &PricingContext { self } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:331:40 [INFO] [stderr] | [INFO] [stderr] 331 | fn to_saved(opt_any_saved: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:349:41 [INFO] [stderr] | [INFO] [stderr] 349 | forward_curves: HashMap>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:366:26 [INFO] [stderr] | [INFO] [stderr] 366 | fn as_any(&self) -> &Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:367:38 [INFO] [stderr] | [INFO] [stderr] 367 | fn as_mut_any(&mut self) -> &mut Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/bumptime.rs:36:24 [INFO] [stderr] | [INFO] [stderr] 36 | bumpable: &mut Bumpable) -> Result { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/bumptime.rs:58:19 [INFO] [stderr] | [INFO] [stderr] 58 | context: &PricingContext, dependencies: &DependencyCollector) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/bumptime.rs:77:40 [INFO] [stderr] | [INFO] [stderr] 77 | let inst: &Instrument = &*instrument.clone(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:33:26 [INFO] [stderr] | [INFO] [stderr] 33 | fn as_any(&self) -> &Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:41:38 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:41:77 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:74:39 [INFO] [stderr] | [INFO] [stderr] 74 | fn validate_report(&self, other: &Report, tol: &ReportTolerances, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:127:38 [INFO] [stderr] | [INFO] [stderr] 127 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:127:76 [INFO] [stderr] | [INFO] [stderr] 127 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReportGenerator` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:137:37 [INFO] [stderr] | [INFO] [stderr] 137 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:137:60 [INFO] [stderr] | [INFO] [stderr] 137 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:30:26 [INFO] [stderr] | [INFO] [stderr] 30 | fn as_any(&self) -> &Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:42:38 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:42:77 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:79:39 [INFO] [stderr] | [INFO] [stderr] 79 | fn validate_report(&self, other: &Report, tol: &ReportTolerances, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:111:38 [INFO] [stderr] | [INFO] [stderr] 111 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:111:76 [INFO] [stderr] | [INFO] [stderr] 111 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReportGenerator` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:121:37 [INFO] [stderr] | [INFO] [stderr] 121 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:121:60 [INFO] [stderr] | [INFO] [stderr] 121 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:42:26 [INFO] [stderr] | [INFO] [stderr] 42 | fn as_any(&self) -> &Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:50:38 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:50:77 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:83:39 [INFO] [stderr] | [INFO] [stderr] 83 | fn validate_report(&self, other: &Report, tol: &ReportTolerances, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:136:38 [INFO] [stderr] | [INFO] [stderr] 136 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:136:76 [INFO] [stderr] | [INFO] [stderr] 136 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReportGenerator` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:146:37 [INFO] [stderr] | [INFO] [stderr] 146 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:146:60 [INFO] [stderr] | [INFO] [stderr] 146 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:38:55 [INFO] [stderr] | [INFO] [stderr] 38 | fn bump(&mut self, bump: &Bump, save: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:46:27 [INFO] [stderr] | [INFO] [stderr] 46 | fn context(&self) -> &PricingContext; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:49:35 [INFO] [stderr] | [INFO] [stderr] 49 | fn new_saveable(&self) -> Box; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:52:35 [INFO] [stderr] | [INFO] [stderr] 52 | fn restore(&mut self, saved: &Saveable) -> Result<(), qm::Error>; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:56:31 [INFO] [stderr] | [INFO] [stderr] 56 | fn as_bumpable(&self) -> &Bumpable; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:57:43 [INFO] [stderr] | [INFO] [stderr] 57 | fn as_mut_bumpable(&mut self) -> &mut Bumpable; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:58:38 [INFO] [stderr] | [INFO] [stderr] 58 | fn as_pricing_context(&self) -> &PricingContext; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:63:32 [INFO] [stderr] | [INFO] [stderr] 63 | fn clone_box(&self) -> Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:69:32 [INFO] [stderr] | [INFO] [stderr] 69 | fn clone_box(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:74:20 [INFO] [stderr] | [INFO] [stderr] 74 | impl Clone for Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:75:28 [INFO] [stderr] | [INFO] [stderr] 75 | fn clone(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:95:31 [INFO] [stderr] | [INFO] [stderr] 95 | fn as_bumpable(&self) -> &Bumpable; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:96:43 [INFO] [stderr] | [INFO] [stderr] 96 | fn as_mut_bumpable(&mut self) -> &mut Bumpable; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:97:48 [INFO] [stderr] | [INFO] [stderr] 97 | fn as_mut_time_bumpable(&mut self) -> &mut TimeBumpable; [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn TimeBumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:117:32 [INFO] [stderr] | [INFO] [stderr] 117 | fn clone_box(&self) -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:126:26 [INFO] [stderr] | [INFO] [stderr] 126 | fn as_any(&self) -> &Any; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:127:38 [INFO] [stderr] | [INFO] [stderr] 127 | fn as_mut_any(&mut self) -> &mut Any; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:140:26 [INFO] [stderr] | [INFO] [stderr] 140 | fn as_any(&self) -> &Any; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:146:39 [INFO] [stderr] | [INFO] [stderr] 146 | fn validate_report(&self, other: &Report, tol: &ReportTolerances, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:179:37 [INFO] [stderr] | [INFO] [stderr] 179 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:179:60 [INFO] [stderr] | [INFO] [stderr] 179 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:185:34 [INFO] [stderr] | [INFO] [stderr] 185 | pub type RcReportGenerator = Qrc; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReportGenerator` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:186:57 [INFO] [stderr] | [INFO] [stderr] 186 | pub type GeneratorTypeRegistry = Registry>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReportGenerator` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:189:40 [INFO] [stderr] | [INFO] [stderr] 189 | impl<'de> sd::Deserialize<'de> for Qrc { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReportGenerator` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:214:27 [INFO] [stderr] | [INFO] [stderr] 214 | pub type BoxReport = Qbox; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:230:28 [INFO] [stderr] | [INFO] [stderr] 230 | let self_report : &Report = self.deref(); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:231:29 [INFO] [stderr] | [INFO] [stderr] 231 | let other_report : &Report = other.deref(); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:268:47 [INFO] [stderr] | [INFO] [stderr] 268 | pub fn bumped_price(bump: &Bump, pricer: &mut Pricer, saveable: Option<&mut Saveable>, unbumped: f64) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:268:77 [INFO] [stderr] | [INFO] [stderr] 268 | pub fn bumped_price(bump: &Bump, pricer: &mut Pricer, saveable: Option<&mut Saveable>, unbumped: f64) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:62:38 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:62:76 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModelFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:74:22 [INFO] [stderr] | [INFO] [stderr] 74 | context: Box) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:75:23 [INFO] [stderr] | [INFO] [stderr] 75 | -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:129:18 [INFO] [stderr] | [INFO] [stderr] 129 | context: Box, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:151:22 [INFO] [stderr] | [INFO] [stderr] 151 | context: Box, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:253:15 [INFO] [stderr] | [INFO] [stderr] 253 | context: &PricingContext, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:269:22 [INFO] [stderr] | [INFO] [stderr] 269 | let instr : &Instrument = instrument.deref(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:297:15 [INFO] [stderr] | [INFO] [stderr] 297 | context: &PricingContext, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:382:15 [INFO] [stderr] | [INFO] [stderr] 382 | context: &PricingContext, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:400:21 [INFO] [stderr] | [INFO] [stderr] 400 | let instr: &Instrument = asset.deref(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:408:32 [INFO] [stderr] | [INFO] [stderr] 408 | pub fn fetch_path(instrument: &Instrument, context: &PricingContext, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:408:54 [INFO] [stderr] | [INFO] [stderr] 408 | pub fn fetch_path(instrument: &Instrument, context: &PricingContext, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:481:33 [INFO] [stderr] | [INFO] [stderr] 481 | fn as_mc_context(&self) -> &MonteCarloContext { self } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:482:31 [INFO] [stderr] | [INFO] [stderr] 482 | fn as_bumpable(&self) -> &Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:483:43 [INFO] [stderr] | [INFO] [stderr] 483 | fn as_mut_bumpable(&mut self) -> &mut Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:541:35 [INFO] [stderr] | [INFO] [stderr] 541 | fn pricing_context(&self) -> &PricingContext { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:548:60 [INFO] [stderr] | [INFO] [stderr] 548 | fn bump(&mut self, bump: &Bump, any_saved: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:555:28 [INFO] [stderr] | [INFO] [stderr] 555 | : (Option<&mut Saveable>, Option<&mut HashMap>>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:604:35 [INFO] [stderr] | [INFO] [stderr] 604 | fn new_saveable(&self) -> Box { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:613:27 [INFO] [stderr] | [INFO] [stderr] 613 | fn context(&self) -> &PricingContext { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:617:39 [INFO] [stderr] | [INFO] [stderr] 617 | fn restore(&mut self, any_saved: &Saveable) -> Result<(), qm::Error> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:638:39 [INFO] [stderr] | [INFO] [stderr] 638 | fn to_saved(opt_saveable: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:654:21 [INFO] [stderr] | [INFO] [stderr] 654 | saved_data: Box, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:662:32 [INFO] [stderr] | [INFO] [stderr] 662 | pub fn new(saved_data: Box) -> SavedBlackDiffusion { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:670:26 [INFO] [stderr] | [INFO] [stderr] 670 | fn as_any(&self) -> &Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:671:38 [INFO] [stderr] | [INFO] [stderr] 671 | fn as_mut_any(&mut self) -> &mut Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:29:22 [INFO] [stderr] | [INFO] [stderr] 29 | context: Box) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:30:23 [INFO] [stderr] | [INFO] [stderr] 30 | -> Result, qm::Error>; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:36:48 [INFO] [stderr] | [INFO] [stderr] 36 | pub type TypeRegistry = Registry>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModelFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:39:40 [INFO] [stderr] | [INFO] [stderr] 39 | impl<'de> sd::Deserialize<'de> for Qrc { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModelFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:59:41 [INFO] [stderr] | [INFO] [stderr] 59 | pub type RcMonteCarloModelFactory = Qrc; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModelFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:66:33 [INFO] [stderr] | [INFO] [stderr] 66 | fn as_mc_context(&self) -> &MonteCarloContext; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:69:31 [INFO] [stderr] | [INFO] [stderr] 69 | fn as_bumpable(&self) -> &Bumpable; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:70:43 [INFO] [stderr] | [INFO] [stderr] 70 | fn as_mut_bumpable(&mut self) -> &mut Bumpable; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:76:32 [INFO] [stderr] | [INFO] [stderr] 76 | fn clone_box(&self) -> Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:82:32 [INFO] [stderr] | [INFO] [stderr] 82 | fn clone_box(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:87:20 [INFO] [stderr] | [INFO] [stderr] 87 | impl Clone for Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:88:28 [INFO] [stderr] | [INFO] [stderr] 88 | fn clone(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:34:16 [INFO] [stderr] | [INFO] [stderr] 34 | model: Box [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:59:38 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:59:76 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn PricerFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:70:50 [INFO] [stderr] | [INFO] [stderr] 70 | market_data: RcMarketData) -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:121:31 [INFO] [stderr] | [INFO] [stderr] 121 | fn as_bumpable(&self) -> &Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:122:43 [INFO] [stderr] | [INFO] [stderr] 122 | fn as_mut_bumpable(&mut self) -> &mut Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:123:48 [INFO] [stderr] | [INFO] [stderr] 123 | fn as_mut_time_bumpable(&mut self) -> &mut TimeBumpable { self } [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn TimeBumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:146:32 [INFO] [stderr] | [INFO] [stderr] 146 | fn clone_box(&self) -> Box { Box::new(self.clone()) } [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:150:55 [INFO] [stderr] | [INFO] [stderr] 150 | fn bump(&mut self, bump: &Bump, save: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:159:27 [INFO] [stderr] | [INFO] [stderr] 159 | fn context(&self) -> &PricingContext { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:163:35 [INFO] [stderr] | [INFO] [stderr] 163 | fn new_saveable(&self) -> Box { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:167:35 [INFO] [stderr] | [INFO] [stderr] 167 | fn restore(&mut self, saved: &Saveable) -> Result<(), qm::Error> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:49:38 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:49:76 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn PricerFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:60:50 [INFO] [stderr] | [INFO] [stderr] 60 | market_data: RcMarketData) -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:99:31 [INFO] [stderr] | [INFO] [stderr] 99 | fn as_bumpable(&self) -> &Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:100:43 [INFO] [stderr] | [INFO] [stderr] 100 | fn as_mut_bumpable(&mut self) -> &mut Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:101:48 [INFO] [stderr] | [INFO] [stderr] 101 | fn as_mut_time_bumpable(&mut self) -> &mut TimeBumpable { self } [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn TimeBumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:125:32 [INFO] [stderr] | [INFO] [stderr] 125 | fn clone_box(&self) -> Box { Box::new(self.clone()) } [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:129:55 [INFO] [stderr] | [INFO] [stderr] 129 | fn bump(&mut self, bump: &Bump, save: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:138:27 [INFO] [stderr] | [INFO] [stderr] 138 | fn context(&self) -> &PricingContext { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:142:35 [INFO] [stderr] | [INFO] [stderr] 142 | fn new_saveable(&self) -> Box { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:146:35 [INFO] [stderr] | [INFO] [stderr] 146 | fn restore(&mut self, saved: &Saveable) -> Result<(), qm::Error> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/mod.rs:26:50 [INFO] [stderr] | [INFO] [stderr] 26 | market_data: RcMarketData) -> Result, qm::Error>; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/mod.rs:32:48 [INFO] [stderr] | [INFO] [stderr] 32 | pub type TypeRegistry = Registry>>; [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn PricerFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/mod.rs:35:40 [INFO] [stderr] | [INFO] [stderr] 35 | impl<'de> sd::Deserialize<'de> for Qrc { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn PricerFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/mod.rs:56:32 [INFO] [stderr] | [INFO] [stderr] 56 | pub type RcPricerFactory = Qrc; [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn PricerFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solvers/impliedvol.rs:31:34 [INFO] [stderr] | [INFO] [stderr] 31 | fn solve(&self, pricer: &mut Pricer, target: f64, min: f64, max: f64) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solvers/impliedvol.rs:43:33 [INFO] [stderr] | [INFO] [stderr] 43 | fn price_given_vol(pricer: &mut Pricer, vol: f64, id: &str) -> Result { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solvers/impliedvol.rs:49:27 [INFO] [stderr] | [INFO] [stderr] 49 | fn single_vol_id(pricer: &Pricer) -> Result { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solvers/mod.rs:19:34 [INFO] [stderr] | [INFO] [stderr] 19 | fn solve(&self, pricer: &mut Pricer, target: f64, min: f64, max: f64) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:34:42 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn instrument_from_json(source: &mut Read, [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:47:27 [INFO] [stderr] | [INFO] [stderr] 47 | let mut opt = Dedup::>::new(instr_dedup, instruments_map); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:47:43 [INFO] [stderr] | [INFO] [stderr] 47 | let mut opt = Dedup::>::new(instr_dedup, instruments_map); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:63:40 [INFO] [stderr] | [INFO] [stderr] 63 | pub fn currency_from_json(source: &mut Read) [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:75:46 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn pricer_factory_from_json(source: &mut Read) [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:86:44 [INFO] [stderr] | [INFO] [stderr] 86 | pub fn fixing_table_from_json(source: &mut Read) [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:99:43 [INFO] [stderr] | [INFO] [stderr] 99 | pub fn market_data_from_json(source: &mut Read) [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:110:48 [INFO] [stderr] | [INFO] [stderr] 110 | pub fn report_generator_from_json(source: &mut Read) [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:122:39 [INFO] [stderr] | [INFO] [stderr] 122 | pub fn reports_from_json(source: &mut Read) [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:153:69 [INFO] [stderr] | [INFO] [stderr] 153 | pub fn write_results(reports: &[BoxReport], pretty: bool, out: &mut Write) [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:183:62 [INFO] [stderr] | [INFO] [stderr] 183 | fn serialize_output(to_write: &T, pretty: bool, out: &mut Write) -> Result<(), qm::Error> [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:267:35 [INFO] [stderr] | [INFO] [stderr] 267 | impl<'a> serde::Serialize for Stored + 'a { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Stored + 'a` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:282:29 [INFO] [stderr] | [INFO] [stderr] 282 | pub type RcStored = Qrc; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:286:44 [INFO] [stderr] | [INFO] [stderr] 286 | impl<'de> sd::Deserialize<'de> for Qrc { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:317:32 [INFO] [stderr] | [INFO] [stderr] 317 | pub fn a<'de>(de: &mut Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:322:32 [INFO] [stderr] | [INFO] [stderr] 322 | pub fn b<'de>(de: &mut Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:327:32 [INFO] [stderr] | [INFO] [stderr] 327 | pub fn c<'de>(de: &mut Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:336:21 [INFO] [stderr] | [INFO] [stderr] 336 | let a : Arc = Arc::new(A { foo: "bar".to_owned() }); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:337:21 [INFO] [stderr] | [INFO] [stderr] 337 | let b : Arc = Arc::new(B::Str("Hello World".to_owned())); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:338:21 [INFO] [stderr] | [INFO] [stderr] 338 | let c : Arc = Arc::new(B::Int(42)); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:387:21 [INFO] [stderr] | [INFO] [stderr] 387 | let a : Arc = Arc::new(A { foo: "bar".to_owned() }); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:388:21 [INFO] [stderr] | [INFO] [stderr] 388 | let b : Arc = Arc::new(B::Str("Hello World".to_owned())); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:389:21 [INFO] [stderr] | [INFO] [stderr] 389 | let c : Arc = Arc::new(B::Int(42)); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:420:30 [INFO] [stderr] | [INFO] [stderr] 420 | pub type DrcStored = Drc; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:430:45 [INFO] [stderr] | [INFO] [stderr] 430 | static DEDUP_STORED : RefCell> [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:566:21 [INFO] [stderr] | [INFO] [stderr] 566 | let a : Arc = Arc::new(A { foo: "a".to_owned() }); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:568:21 [INFO] [stderr] | [INFO] [stderr] 568 | let b : Arc = Arc::new(B::Str("b".to_owned())); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:570:21 [INFO] [stderr] | [INFO] [stderr] 570 | let c : Arc = Arc::new(C { id: "c".to_string(), left: rc_a.clone(), right: rc_b.clone() }); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:572:21 [INFO] [stderr] | [INFO] [stderr] 572 | let d : Arc = Arc::new(C { id: "d".to_string(), left: rc_c.clone(), right: rc_c.clone() }); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:612:21 [INFO] [stderr] | [INFO] [stderr] 612 | let a : Arc = Arc::new(A { foo: "a".to_owned() }); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:614:21 [INFO] [stderr] | [INFO] [stderr] 614 | let b : Arc = Arc::new(B::Str("b".to_owned())); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:616:21 [INFO] [stderr] | [INFO] [stderr] 616 | let c : Arc = Arc::new(C { id: "c".to_string(), left: rc_a.clone(), right: rc_b.clone() }); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:618:21 [INFO] [stderr] | [INFO] [stderr] 618 | let d : Arc = Arc::new(C { id: "d".to_string(), left: rc_c.clone(), right: rc_c.clone() }); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:651:36 [INFO] [stderr] | [INFO] [stderr] 651 | let mut seed = Dedup::>::new(control.clone(), map.clone()); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:651:48 [INFO] [stderr] | [INFO] [stderr] 651 | let mut seed = Dedup::>::new(control.clone(), map.clone()); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:660:32 [INFO] [stderr] | [INFO] [stderr] 660 | let mut seed = Dedup::>::new(control.clone(), map.clone()); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/factories.rs:660:44 [INFO] [stderr] | [INFO] [stderr] 660 | let mut seed = Dedup::>::new(control.clone(), map.clone()); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stored` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/math/interpolation.rs:550:18 [INFO] [stderr] | [INFO] [stderr] 550 | interp: &Interpolate, x: f64, deriv: f64, expected: f64) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/calendar.rs:86:27 [INFO] [stderr] | [INFO] [stderr] 86 | pub type RcCalendar = Qrc; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Calendar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/calendar.rs:125:38 [INFO] [stderr] | [INFO] [stderr] 125 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/calendar.rs:180:38 [INFO] [stderr] | [INFO] [stderr] 180 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/calendar.rs:306:38 [INFO] [stderr] | [INFO] [stderr] 306 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/calendar.rs:503:38 [INFO] [stderr] | [INFO] [stderr] 503 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/calendar.rs:754:43 [INFO] [stderr] | [INFO] [stderr] 754 | fn consistency_check_count(calendar: &Calendar, exact: bool) { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Calendar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/calendar.rs:798:31 [INFO] [stderr] | [INFO] [stderr] 798 | fn assert_step(calendar: &Calendar, stepped: Date, manual: Date, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Calendar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/calendar.rs:823:42 [INFO] [stderr] | [INFO] [stderr] 823 | fn consistency_check_step(calendar: &Calendar) { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Calendar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/calendar.rs:860:32 [INFO] [stderr] | [INFO] [stderr] 860 | fn manual_count(calendar: &Calendar, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Calendar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/calendar.rs:879:20 [INFO] [stderr] | [INFO] [stderr] 879 | calendar: &Calendar, from: Date, direction: i32, steps: i32) -> Date { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Calendar` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/rules.rs:27:27 [INFO] [stderr] | [INFO] [stderr] 27 | pub type RcDateRule = Qrc; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn DateRule` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/rules.rs:68:38 [INFO] [stderr] | [INFO] [stderr] 68 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/rules.rs:121:38 [INFO] [stderr] | [INFO] [stderr] 121 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dates/rules.rs:148:38 [INFO] [stderr] | [INFO] [stderr] 148 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/curves.rs:62:28 [INFO] [stderr] | [INFO] [stderr] 62 | pub type RcRateCurve = Qrc; [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn RateCurve` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/curves.rs:113:38 [INFO] [stderr] | [INFO] [stderr] 113 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/curves.rs:168:38 [INFO] [stderr] | [INFO] [stderr] 168 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/curves.rs:214:38 [INFO] [stderr] | [INFO] [stderr] 214 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/curves.rs:248:38 [INFO] [stderr] | [INFO] [stderr] 248 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/curves.rs:282:38 [INFO] [stderr] | [INFO] [stderr] 282 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/divstream.rs:198:52 [INFO] [stderr] | [INFO] [stderr] 198 | pub fn new(div_stream: &DividendStream, rate: &RateCurve, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn RateCurve` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/divstream.rs:199:18 [INFO] [stderr] | [INFO] [stderr] 199 | borrow: &RateCurve, spot: f64, base_date: Date, high_water_mark: Date) [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn RateCurve` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:16:29 [INFO] [stderr] | [INFO] [stderr] 16 | fn as_interp(&self) -> &Interpolate; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:45:29 [INFO] [stderr] | [INFO] [stderr] 45 | fn as_interp(&self) -> &Interpolate { self } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:63:17 [INFO] [stderr] | [INFO] [stderr] 63 | interp: Box> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:67:29 [INFO] [stderr] | [INFO] [stderr] 67 | fn as_interp(&self) -> &Interpolate { self } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:75:28 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn new(interp: Box>) -> InterpolatedForward { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:93:29 [INFO] [stderr] | [INFO] [stderr] 93 | fn as_interp(&self) -> &Interpolate { self } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:167:36 [INFO] [stderr] | [INFO] [stderr] 167 | pub fn discount_with_borrow(rate: &RateCurve, borrow: &RateCurve, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn RateCurve` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:167:56 [INFO] [stderr] | [INFO] [stderr] 167 | pub fn discount_with_borrow(rate: &RateCurve, borrow: &RateCurve, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn RateCurve` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:177:40 [INFO] [stderr] | [INFO] [stderr] 177 | pub fn log_discount_with_borrow(rate: &RateCurve, borrow: &RateCurve, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn RateCurve` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/forward.rs:177:60 [INFO] [stderr] | [INFO] [stderr] 177 | pub fn log_discount_with_borrow(rate: &RateCurve, borrow: &RateCurve, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn RateCurve` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:37:38 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:69:34 [INFO] [stderr] | [INFO] [stderr] 69 | fn forward(&self) -> Option<&Interpolate> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:109:38 [INFO] [stderr] | [INFO] [stderr] 109 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:146:34 [INFO] [stderr] | [INFO] [stderr] 146 | fn forward(&self) -> Option<&Interpolate> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:182:38 [INFO] [stderr] | [INFO] [stderr] 182 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:208:34 [INFO] [stderr] | [INFO] [stderr] 208 | fn forward(&self) -> Option<&Interpolate> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:249:38 [INFO] [stderr] | [INFO] [stderr] 249 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:276:34 [INFO] [stderr] | [INFO] [stderr] 276 | fn forward(&self) -> Option<&Interpolate> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:303:25 [INFO] [stderr] | [INFO] [stderr] 303 | bumped_forward: Arc [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:311:60 [INFO] [stderr] | [INFO] [stderr] 311 | pub fn new(base_vol: RcVolSurface, bumped_forward: Arc) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/voldecorators.rs:361:34 [INFO] [stderr] | [INFO] [stderr] 361 | fn forward(&self) -> Option<&Interpolate> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:65:34 [INFO] [stderr] | [INFO] [stderr] 65 | fn forward(&self) -> Option<&Interpolate>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:235:29 [INFO] [stderr] | [INFO] [stderr] 235 | pub type RcVolSurface = Qrc; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn VolSurface` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:360:22 [INFO] [stderr] | [INFO] [stderr] 360 | forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Result, qm::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:360:41 [INFO] [stderr] | [INFO] [stderr] 360 | forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:437:34 [INFO] [stderr] | [INFO] [stderr] 437 | fn forward(&self) -> Option<&Interpolate> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:473:38 [INFO] [stderr] | [INFO] [stderr] 473 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:579:34 [INFO] [stderr] | [INFO] [stderr] 579 | fn forward(&self) -> Option<&Interpolate> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:800:38 [INFO] [stderr] | [INFO] [stderr] 800 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:816:34 [INFO] [stderr] | [INFO] [stderr] 816 | fn forward(&self) -> Option<&Interpolate> { self.0.forward() } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:854:38 [INFO] [stderr] | [INFO] [stderr] 854 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/data/volsurface.rs:870:34 [INFO] [stderr] | [INFO] [stderr] 870 | fn forward(&self) -> Option<&Interpolate> { self.0.forward() } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:45:38 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:45:76 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:73:42 [INFO] [stderr] | [INFO] [stderr] 73 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:80:39 [INFO] [stderr] | [INFO] [stderr] 80 | fn as_priceable(&self) -> Option<&Priceable> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:118:33 [INFO] [stderr] | [INFO] [stderr] 118 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:124:33 [INFO] [stderr] | [INFO] [stderr] 124 | fn prices(&self, _context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:135:49 [INFO] [stderr] | [INFO] [stderr] 135 | pub fn dependence_on_spot_discount(instrument: &Instrument, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:136:19 [INFO] [stderr] | [INFO] [stderr] 136 | context: &mut DependencyContext) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:202:38 [INFO] [stderr] | [INFO] [stderr] 202 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:202:76 [INFO] [stderr] | [INFO] [stderr] 202 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:221:42 [INFO] [stderr] | [INFO] [stderr] 221 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:239:39 [INFO] [stderr] | [INFO] [stderr] 239 | fn as_priceable(&self) -> Option<&Priceable> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:277:33 [INFO] [stderr] | [INFO] [stderr] 277 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:281:32 [INFO] [stderr] | [INFO] [stderr] 281 | fn prices(&self, context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:326:38 [INFO] [stderr] | [INFO] [stderr] 326 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:326:76 [INFO] [stderr] | [INFO] [stderr] 326 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:350:42 [INFO] [stderr] | [INFO] [stderr] 350 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:357:39 [INFO] [stderr] | [INFO] [stderr] 357 | fn as_priceable(&self) -> Option<&Priceable> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:395:33 [INFO] [stderr] | [INFO] [stderr] 395 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:399:32 [INFO] [stderr] | [INFO] [stderr] 399 | fn prices(&self, _context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:461:47 [INFO] [stderr] | [INFO] [stderr] 461 | fn forward_curve(&self, _instrument: &Instrument, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:462:51 [INFO] [stderr] | [INFO] [stderr] 462 | _high_water_mark: Date) -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:466:45 [INFO] [stderr] | [INFO] [stderr] 466 | fn vol_surface(&self, _instrument: &Instrument, _high_water_mark: Date, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:467:27 [INFO] [stderr] | [INFO] [stderr] 467 | _forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Result, qm::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:467:46 [INFO] [stderr] | [INFO] [stderr] 467 | _forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:472:40 [INFO] [stderr] | [INFO] [stderr] 472 | fn correlation(&self, _first: &Instrument, _second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/assets.rs:472:62 [INFO] [stderr] | [INFO] [stderr] 472 | fn correlation(&self, _first: &Instrument, _second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:58:38 [INFO] [stderr] | [INFO] [stderr] 58 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:58:76 [INFO] [stderr] | [INFO] [stderr] 58 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:80:42 [INFO] [stderr] | [INFO] [stderr] 80 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:94:39 [INFO] [stderr] | [INFO] [stderr] 94 | fn as_priceable(&self) -> Option<&Priceable> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:120:33 [INFO] [stderr] | [INFO] [stderr] 120 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:124:32 [INFO] [stderr] | [INFO] [stderr] 124 | fn prices(&self, context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:197:47 [INFO] [stderr] | [INFO] [stderr] 197 | fn forward_curve(&self, _instrument: &Instrument, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:198:51 [INFO] [stderr] | [INFO] [stderr] 198 | _high_water_mark: Date) -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:202:45 [INFO] [stderr] | [INFO] [stderr] 202 | fn vol_surface(&self, _instrument: &Instrument, _high_water_mark: Date, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:203:27 [INFO] [stderr] | [INFO] [stderr] 203 | _forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Result, qm::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:203:46 [INFO] [stderr] | [INFO] [stderr] 203 | _forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:208:40 [INFO] [stderr] | [INFO] [stderr] 208 | fn correlation(&self, _first: &Instrument, _second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/bonds.rs:208:62 [INFO] [stderr] | [INFO] [stderr] 208 | fn correlation(&self, _first: &Instrument, _second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:88:32 [INFO] [stderr] | [INFO] [stderr] 88 | fn prices(&self, context: &PricingContext, dates: &[DateTime], out: &mut [f64], [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:90:30 [INFO] [stderr] | [INFO] [stderr] 90 | strike_and_forward: &Fn(&Priceable) -> Result<(f64, f64), qm::Error>) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Priceable) -> Result<(f64, f64), qm::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:90:34 [INFO] [stderr] | [INFO] [stderr] 90 | strike_and_forward: &Fn(&Priceable) -> Result<(f64, f64), qm::Error>) [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:246:38 [INFO] [stderr] | [INFO] [stderr] 246 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:246:76 [INFO] [stderr] | [INFO] [stderr] 246 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:276:38 [INFO] [stderr] | [INFO] [stderr] 276 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:276:76 [INFO] [stderr] | [INFO] [stderr] 276 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:304:42 [INFO] [stderr] | [INFO] [stderr] 304 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:336:42 [INFO] [stderr] | [INFO] [stderr] 336 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:338:39 [INFO] [stderr] | [INFO] [stderr] 338 | fn as_priceable(&self) -> Option<&Priceable> { Some(self) } [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:339:42 [INFO] [stderr] | [INFO] [stderr] 339 | fn as_mc_priceable(&self) -> Option<&MonteCarloPriceable> { Some(self) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloPriceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:401:39 [INFO] [stderr] | [INFO] [stderr] 401 | fn as_priceable(&self) -> Option<&Priceable> { Some(self) } [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:402:42 [INFO] [stderr] | [INFO] [stderr] 402 | fn as_mc_priceable(&self) -> Option<&MonteCarloPriceable> { Some(self) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloPriceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:404:42 [INFO] [stderr] | [INFO] [stderr] 404 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:443:33 [INFO] [stderr] | [INFO] [stderr] 443 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:446:32 [INFO] [stderr] | [INFO] [stderr] 446 | fn prices(&self, context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:456:33 [INFO] [stderr] | [INFO] [stderr] 456 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:461:32 [INFO] [stderr] | [INFO] [stderr] 461 | fn prices(&self, context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:480:33 [INFO] [stderr] | [INFO] [stderr] 480 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:483:22 [INFO] [stderr] | [INFO] [stderr] 483 | output: &mut MonteCarloDependencies) -> Result<(), qm::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloDependencies` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:507:34 [INFO] [stderr] | [INFO] [stderr] 507 | fn mc_price(&self, context: &MonteCarloContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:545:33 [INFO] [stderr] | [INFO] [stderr] 545 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:548:22 [INFO] [stderr] | [INFO] [stderr] 548 | output: &mut MonteCarloDependencies) -> Result<(), qm::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloDependencies` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:573:34 [INFO] [stderr] | [INFO] [stderr] 573 | fn mc_price(&self, context: &MonteCarloContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:662:46 [INFO] [stderr] | [INFO] [stderr] 662 | fn forward_curve(&self, instrument: &Instrument, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:663:51 [INFO] [stderr] | [INFO] [stderr] 663 | _high_water_mark: Date) -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:678:45 [INFO] [stderr] | [INFO] [stderr] 678 | fn vol_surface(&self, _instrument: &Instrument, _high_water_mark: Date, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:679:27 [INFO] [stderr] | [INFO] [stderr] 679 | _forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Result, qm::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:679:46 [INFO] [stderr] | [INFO] [stderr] 679 | _forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:689:40 [INFO] [stderr] | [INFO] [stderr] 689 | fn correlation(&self, _first: &Instrument, _second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:689:62 [INFO] [stderr] | [INFO] [stderr] 689 | fn correlation(&self, _first: &Instrument, _second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:1923:40 [INFO] [stderr] | [INFO] [stderr] 1923 | let mut opt_seed = Dedup::>::new(control.clone(), instruments.clone()); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:1923:56 [INFO] [stderr] | [INFO] [stderr] 1923 | let mut opt_seed = Dedup::>::new(control.clone(), instruments.clone()); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:1936:40 [INFO] [stderr] | [INFO] [stderr] 1936 | let mut opt_seed = Dedup::>::new(control.clone(), instruments.clone()); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/options.rs:1936:56 [INFO] [stderr] | [INFO] [stderr] 1936 | let mut opt_seed = Dedup::>::new(control.clone(), instruments.clone()); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:58:38 [INFO] [stderr] | [INFO] [stderr] 58 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:58:76 [INFO] [stderr] | [INFO] [stderr] 58 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:68:42 [INFO] [stderr] | [INFO] [stderr] 68 | fn dependencies(&self, context: &mut DependencyContext) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:92:39 [INFO] [stderr] | [INFO] [stderr] 92 | fn as_priceable(&self) -> Option<&Priceable> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:144:33 [INFO] [stderr] | [INFO] [stderr] 144 | fn as_instrument(&self) -> &Instrument { self } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:147:32 [INFO] [stderr] | [INFO] [stderr] 147 | fn prices(&self, context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:227:46 [INFO] [stderr] | [INFO] [stderr] 227 | fn forward_curve(&self, instrument: &Instrument, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:228:50 [INFO] [stderr] | [INFO] [stderr] 228 | high_water_mark: Date) -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:240:45 [INFO] [stderr] | [INFO] [stderr] 240 | fn vol_surface(&self, _instrument: &Instrument, _high_water_mark: Date, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:241:27 [INFO] [stderr] | [INFO] [stderr] 241 | _forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Result, qm::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:241:46 [INFO] [stderr] | [INFO] [stderr] 241 | _forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:246:40 [INFO] [stderr] | [INFO] [stderr] 246 | fn correlation(&self, _first: &Instrument, _second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/basket.rs:246:62 [INFO] [stderr] | [INFO] [stderr] 246 | fn correlation(&self, _first: &Instrument, _second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:71:42 [INFO] [stderr] | [INFO] [stderr] 71 | fn dependencies(&self, context: &mut DependencyContext) -> SpotRequirement; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn DependencyContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:125:39 [INFO] [stderr] | [INFO] [stderr] 125 | fn as_priceable(&self) -> Option<&Priceable> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:130:42 [INFO] [stderr] | [INFO] [stderr] 130 | fn as_mc_priceable(&self) -> Option<&MonteCarloPriceable> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloPriceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:180:48 [INFO] [stderr] | [INFO] [stderr] 180 | pub type TypeRegistry = Registry>>; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:183:40 [INFO] [stderr] | [INFO] [stderr] 183 | impl<'de> sd::Deserialize<'de> for Qrc { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:212:29 [INFO] [stderr] | [INFO] [stderr] 212 | pub type RcInstrument = Drc>; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:212:45 [INFO] [stderr] | [INFO] [stderr] 212 | pub type RcInstrument = Drc>; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:243:49 [INFO] [stderr] | [INFO] [stderr] 243 | pub static DEDUP_INSTRUMENT : RefCell>> [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:243:65 [INFO] [stderr] | [INFO] [stderr] 243 | pub static DEDUP_INSTRUMENT : RefCell>> [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:257:28 [INFO] [stderr] | [INFO] [stderr] 257 | let qrc : &Qrc = self.content(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:300:26 [INFO] [stderr] | [INFO] [stderr] 300 | let obj: Qrc = sd::de::Deserialize::deserialize(sd::de::value::MapAccessDeserializer::new(visitor))?; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:383:40 [INFO] [stderr] | [INFO] [stderr] 383 | fn new_dated(&self, date: Date) -> Dated; [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Dated` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:423:31 [INFO] [stderr] | [INFO] [stderr] 423 | fn price(&self, context: &PricingContext, val_date: DateTime) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:435:32 [INFO] [stderr] | [INFO] [stderr] 435 | fn prices(&self, context: &PricingContext, dates: &[DateTime], out: &mut [f64]) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:440:33 [INFO] [stderr] | [INFO] [stderr] 440 | fn as_instrument(&self) -> &Instrument; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:447:20 [INFO] [stderr] | [INFO] [stderr] 447 | priceable: &'a Priceable, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:448:18 [INFO] [stderr] | [INFO] [stderr] 448 | context: &'a PricingContext, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:453:31 [INFO] [stderr] | [INFO] [stderr] 453 | pub fn new(priceable: &'a Priceable, context: &'a PricingContext, time_of_day: TimeOfDay) [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Priceable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:453:55 [INFO] [stderr] | [INFO] [stderr] 453 | pub fn new(priceable: &'a Priceable, context: &'a PricingContext, time_of_day: TimeOfDay) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:460:29 [INFO] [stderr] | [INFO] [stderr] 460 | fn as_interp(&self) -> &Interpolate { self } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Interpolate` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:487:42 [INFO] [stderr] | [INFO] [stderr] 487 | fn forward_curve(&self, instrument: &Instrument, high_water_mark: Date) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:488:23 [INFO] [stderr] | [INFO] [stderr] 488 | -> Result, qm::Error>; [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:493:40 [INFO] [stderr] | [INFO] [stderr] 493 | fn vol_surface(&self, instrument: &Instrument, high_water_mark: Date, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:494:22 [INFO] [stderr] | [INFO] [stderr] 494 | forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Result, qm::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:494:41 [INFO] [stderr] | [INFO] [stderr] 494 | forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:507:35 [INFO] [stderr] | [INFO] [stderr] 507 | fn correlation(&self, first: &Instrument, second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:507:56 [INFO] [stderr] | [INFO] [stderr] 507 | fn correlation(&self, first: &Instrument, second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:539:22 [INFO] [stderr] | [INFO] [stderr] 539 | output: &mut MonteCarloDependencies) -> Result<(), qm::Error>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloDependencies` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:556:34 [INFO] [stderr] | [INFO] [stderr] 556 | fn mc_price(&self, context: &MonteCarloContext) -> Result; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:559:33 [INFO] [stderr] | [INFO] [stderr] 559 | fn as_instrument(&self) -> &Instrument; [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/instruments/mod.rs:608:35 [INFO] [stderr] | [INFO] [stderr] 608 | fn pricing_context(&self) -> &PricingContext; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:111:29 [INFO] [stderr] | [INFO] [stderr] 111 | let instr: &Instrument = &*instrument.clone(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:188:42 [INFO] [stderr] | [INFO] [stderr] 188 | fn forward_curve(&self, instrument: &Instrument, high_water_mark: Date) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:189:23 [INFO] [stderr] | [INFO] [stderr] 189 | -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:215:40 [INFO] [stderr] | [INFO] [stderr] 215 | fn vol_surface(&self, instrument: &Instrument, _high_water_mark: Date, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:216:22 [INFO] [stderr] | [INFO] [stderr] 216 | forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Result, qm::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:216:41 [INFO] [stderr] | [INFO] [stderr] 216 | forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:228:36 [INFO] [stderr] | [INFO] [stderr] 228 | fn correlation(&self, _first: &Instrument, _second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:228:58 [INFO] [stderr] | [INFO] [stderr] 228 | fn correlation(&self, _first: &Instrument, _second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:246:55 [INFO] [stderr] | [INFO] [stderr] 246 | fn bump(&mut self, bump: &Bump, save: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:276:35 [INFO] [stderr] | [INFO] [stderr] 276 | fn new_saveable(&self) -> Box { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:280:27 [INFO] [stderr] | [INFO] [stderr] 280 | fn context(&self) -> &PricingContext { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:284:39 [INFO] [stderr] | [INFO] [stderr] 284 | fn restore(&mut self, any_saved: &Saveable) -> Result<(), qm::Error> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:301:31 [INFO] [stderr] | [INFO] [stderr] 301 | fn as_bumpable(&self) -> &Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:302:43 [INFO] [stderr] | [INFO] [stderr] 302 | fn as_mut_bumpable(&mut self) -> &mut Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:303:38 [INFO] [stderr] | [INFO] [stderr] 303 | fn as_pricing_context(&self) -> &PricingContext { self } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:307:40 [INFO] [stderr] | [INFO] [stderr] 307 | fn to_saved_data(opt_save: Option<&mut Saveable>) -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:320:42 [INFO] [stderr] | [INFO] [stderr] 320 | fn apply_bump(id: &str, bump: &Bumper, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Bumper` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:374:26 [INFO] [stderr] | [INFO] [stderr] 374 | fn as_any(&self) -> &Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/marketdata.rs:375:38 [INFO] [stderr] | [INFO] [stderr] 375 | fn as_mut_any(&mut self) -> &mut Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:29:41 [INFO] [stderr] | [INFO] [stderr] 29 | forward_curves: HashMap>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:73:63 [INFO] [stderr] | [INFO] [stderr] 73 | saved_forward_curves: Option<&mut HashMap>>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:88:34 [INFO] [stderr] | [INFO] [stderr] 88 | let instrument: &Instrument = &*inst.clone(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:143:46 [INFO] [stderr] | [INFO] [stderr] 143 | forward_curves: &mut HashMap>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:153:27 [INFO] [stderr] | [INFO] [stderr] 153 | let instrument : &Instrument = rc_instrument.deref(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:188:42 [INFO] [stderr] | [INFO] [stderr] 188 | fn forward_curve(&self, instrument: &Instrument, _high_water_mark: Date) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:189:23 [INFO] [stderr] | [INFO] [stderr] 189 | -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:196:40 [INFO] [stderr] | [INFO] [stderr] 196 | fn vol_surface(&self, instrument: &Instrument, _high_water_mark: Date, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:197:23 [INFO] [stderr] | [INFO] [stderr] 197 | _forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Result, qm::Error>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:197:42 [INFO] [stderr] | [INFO] [stderr] 197 | _forward_fn: &Fn() -> Result, qm::Error>) [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:202:35 [INFO] [stderr] | [INFO] [stderr] 202 | fn correlation(&self, first: &Instrument, second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:202:56 [INFO] [stderr] | [INFO] [stderr] 202 | fn correlation(&self, first: &Instrument, second: &Instrument) [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:224:60 [INFO] [stderr] | [INFO] [stderr] 224 | fn bump(&mut self, bump: &Bump, any_saved: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:235:28 [INFO] [stderr] | [INFO] [stderr] 235 | : (Option<&mut Saveable> [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:236:47 [INFO] [stderr] | [INFO] [stderr] 236 | , Option<&mut HashMap>> [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:297:27 [INFO] [stderr] | [INFO] [stderr] 297 | fn context(&self) -> &PricingContext { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:301:35 [INFO] [stderr] | [INFO] [stderr] 301 | fn new_saveable(&self) -> Box { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:305:39 [INFO] [stderr] | [INFO] [stderr] 305 | fn restore(&mut self, any_saved: &Saveable) -> Result<(), qm::Error> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:325:31 [INFO] [stderr] | [INFO] [stderr] 325 | fn as_bumpable(&self) -> &Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:326:43 [INFO] [stderr] | [INFO] [stderr] 326 | fn as_mut_bumpable(&mut self) -> &mut Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:327:38 [INFO] [stderr] | [INFO] [stderr] 327 | fn as_pricing_context(&self) -> &PricingContext { self } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:331:40 [INFO] [stderr] | [INFO] [stderr] 331 | fn to_saved(opt_any_saved: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:349:41 [INFO] [stderr] | [INFO] [stderr] 349 | forward_curves: HashMap>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Forward` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:366:26 [INFO] [stderr] | [INFO] [stderr] 366 | fn as_any(&self) -> &Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/cache.rs:367:38 [INFO] [stderr] | [INFO] [stderr] 367 | fn as_mut_any(&mut self) -> &mut Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/bumptime.rs:36:24 [INFO] [stderr] | [INFO] [stderr] 36 | bumpable: &mut Bumpable) -> Result { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/bumptime.rs:58:19 [INFO] [stderr] | [INFO] [stderr] 58 | context: &PricingContext, dependencies: &DependencyCollector) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/bumptime.rs:77:40 [INFO] [stderr] | [INFO] [stderr] 77 | let inst: &Instrument = &*instrument.clone(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:33:26 [INFO] [stderr] | [INFO] [stderr] 33 | fn as_any(&self) -> &Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:41:38 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:41:77 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:74:39 [INFO] [stderr] | [INFO] [stderr] 74 | fn validate_report(&self, other: &Report, tol: &ReportTolerances, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:127:38 [INFO] [stderr] | [INFO] [stderr] 127 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:127:76 [INFO] [stderr] | [INFO] [stderr] 127 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReportGenerator` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:137:37 [INFO] [stderr] | [INFO] [stderr] 137 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:137:60 [INFO] [stderr] | [INFO] [stderr] 137 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:207:35 [INFO] [stderr] | [INFO] [stderr] 207 | pub fn sample_pricer() -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:225:35 [INFO] [stderr] | [INFO] [stderr] 225 | fn as_bumpable(&self) -> &Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:226:47 [INFO] [stderr] | [INFO] [stderr] 226 | fn as_mut_bumpable(&mut self) -> &mut Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:227:52 [INFO] [stderr] | [INFO] [stderr] 227 | fn as_mut_time_bumpable(&mut self) -> &mut TimeBumpable { self } [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn TimeBumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:238:36 [INFO] [stderr] | [INFO] [stderr] 238 | fn clone_box(&self) -> Box { Box::new(self.clone()) } [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:242:59 [INFO] [stderr] | [INFO] [stderr] 242 | fn bump(&mut self, bump: &Bump, save: Option<&mut Saveable>) -> Result { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:248:31 [INFO] [stderr] | [INFO] [stderr] 248 | fn context(&self) -> &PricingContext { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:251:39 [INFO] [stderr] | [INFO] [stderr] 251 | fn new_saveable(&self) -> Box { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/deltagamma.rs:254:39 [INFO] [stderr] | [INFO] [stderr] 254 | fn restore(&mut self, saved: &Saveable) -> Result<(), qm::Error> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:30:26 [INFO] [stderr] | [INFO] [stderr] 30 | fn as_any(&self) -> &Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:42:38 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:42:77 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:79:39 [INFO] [stderr] | [INFO] [stderr] 79 | fn validate_report(&self, other: &Report, tol: &ReportTolerances, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:111:38 [INFO] [stderr] | [INFO] [stderr] 111 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:111:76 [INFO] [stderr] | [INFO] [stderr] 111 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReportGenerator` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:121:37 [INFO] [stderr] | [INFO] [stderr] 121 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/timebumped.rs:121:60 [INFO] [stderr] | [INFO] [stderr] 121 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:42:26 [INFO] [stderr] | [INFO] [stderr] 42 | fn as_any(&self) -> &Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:50:38 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:50:77 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:83:39 [INFO] [stderr] | [INFO] [stderr] 83 | fn validate_report(&self, other: &Report, tol: &ReportTolerances, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:136:38 [INFO] [stderr] | [INFO] [stderr] 136 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:136:76 [INFO] [stderr] | [INFO] [stderr] 136 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReportGenerator` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:146:37 [INFO] [stderr] | [INFO] [stderr] 146 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/vegavolga.rs:146:60 [INFO] [stderr] | [INFO] [stderr] 146 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:38:55 [INFO] [stderr] | [INFO] [stderr] 38 | fn bump(&mut self, bump: &Bump, save: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:46:27 [INFO] [stderr] | [INFO] [stderr] 46 | fn context(&self) -> &PricingContext; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:49:35 [INFO] [stderr] | [INFO] [stderr] 49 | fn new_saveable(&self) -> Box; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:52:35 [INFO] [stderr] | [INFO] [stderr] 52 | fn restore(&mut self, saved: &Saveable) -> Result<(), qm::Error>; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:56:31 [INFO] [stderr] | [INFO] [stderr] 56 | fn as_bumpable(&self) -> &Bumpable; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:57:43 [INFO] [stderr] | [INFO] [stderr] 57 | fn as_mut_bumpable(&mut self) -> &mut Bumpable; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:58:38 [INFO] [stderr] | [INFO] [stderr] 58 | fn as_pricing_context(&self) -> &PricingContext; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:63:32 [INFO] [stderr] | [INFO] [stderr] 63 | fn clone_box(&self) -> Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:69:32 [INFO] [stderr] | [INFO] [stderr] 69 | fn clone_box(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:74:20 [INFO] [stderr] | [INFO] [stderr] 74 | impl Clone for Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:75:28 [INFO] [stderr] | [INFO] [stderr] 75 | fn clone(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:95:31 [INFO] [stderr] | [INFO] [stderr] 95 | fn as_bumpable(&self) -> &Bumpable; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:96:43 [INFO] [stderr] | [INFO] [stderr] 96 | fn as_mut_bumpable(&mut self) -> &mut Bumpable; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:97:48 [INFO] [stderr] | [INFO] [stderr] 97 | fn as_mut_time_bumpable(&mut self) -> &mut TimeBumpable; [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn TimeBumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:117:32 [INFO] [stderr] | [INFO] [stderr] 117 | fn clone_box(&self) -> Box; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:126:26 [INFO] [stderr] | [INFO] [stderr] 126 | fn as_any(&self) -> &Any; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:127:38 [INFO] [stderr] | [INFO] [stderr] 127 | fn as_mut_any(&mut self) -> &mut Any; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:140:26 [INFO] [stderr] | [INFO] [stderr] 140 | fn as_any(&self) -> &Any; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:146:39 [INFO] [stderr] | [INFO] [stderr] 146 | fn validate_report(&self, other: &Report, tol: &ReportTolerances, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:179:37 [INFO] [stderr] | [INFO] [stderr] 179 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:179:60 [INFO] [stderr] | [INFO] [stderr] 179 | fn generate(&self, pricer: &mut Pricer, saveable: &mut Saveable, unbumped: f64) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:185:34 [INFO] [stderr] | [INFO] [stderr] 185 | pub type RcReportGenerator = Qrc; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReportGenerator` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:186:57 [INFO] [stderr] | [INFO] [stderr] 186 | pub type GeneratorTypeRegistry = Registry>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReportGenerator` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:189:40 [INFO] [stderr] | [INFO] [stderr] 189 | impl<'de> sd::Deserialize<'de> for Qrc { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReportGenerator` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:214:27 [INFO] [stderr] | [INFO] [stderr] 214 | pub type BoxReport = Qbox; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:230:28 [INFO] [stderr] | [INFO] [stderr] 230 | let self_report : &Report = self.deref(); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:231:29 [INFO] [stderr] | [INFO] [stderr] 231 | let other_report : &Report = other.deref(); [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Report` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:268:47 [INFO] [stderr] | [INFO] [stderr] 268 | pub fn bumped_price(bump: &Bump, pricer: &mut Pricer, saveable: Option<&mut Saveable>, unbumped: f64) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/risk/mod.rs:268:77 [INFO] [stderr] | [INFO] [stderr] 268 | pub fn bumped_price(bump: &Bump, pricer: &mut Pricer, saveable: Option<&mut Saveable>, unbumped: f64) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:62:38 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:62:76 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModelFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:74:22 [INFO] [stderr] | [INFO] [stderr] 74 | context: Box) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:75:23 [INFO] [stderr] | [INFO] [stderr] 75 | -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:129:18 [INFO] [stderr] | [INFO] [stderr] 129 | context: Box, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:151:22 [INFO] [stderr] | [INFO] [stderr] 151 | context: Box, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:253:15 [INFO] [stderr] | [INFO] [stderr] 253 | context: &PricingContext, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:269:22 [INFO] [stderr] | [INFO] [stderr] 269 | let instr : &Instrument = instrument.deref(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:297:15 [INFO] [stderr] | [INFO] [stderr] 297 | context: &PricingContext, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:382:15 [INFO] [stderr] | [INFO] [stderr] 382 | context: &PricingContext, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:400:21 [INFO] [stderr] | [INFO] [stderr] 400 | let instr: &Instrument = asset.deref(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:408:32 [INFO] [stderr] | [INFO] [stderr] 408 | pub fn fetch_path(instrument: &Instrument, context: &PricingContext, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:408:54 [INFO] [stderr] | [INFO] [stderr] 408 | pub fn fetch_path(instrument: &Instrument, context: &PricingContext, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:481:33 [INFO] [stderr] | [INFO] [stderr] 481 | fn as_mc_context(&self) -> &MonteCarloContext { self } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:482:31 [INFO] [stderr] | [INFO] [stderr] 482 | fn as_bumpable(&self) -> &Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:483:43 [INFO] [stderr] | [INFO] [stderr] 483 | fn as_mut_bumpable(&mut self) -> &mut Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:541:35 [INFO] [stderr] | [INFO] [stderr] 541 | fn pricing_context(&self) -> &PricingContext { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:548:60 [INFO] [stderr] | [INFO] [stderr] 548 | fn bump(&mut self, bump: &Bump, any_saved: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:555:28 [INFO] [stderr] | [INFO] [stderr] 555 | : (Option<&mut Saveable>, Option<&mut HashMap>>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:604:35 [INFO] [stderr] | [INFO] [stderr] 604 | fn new_saveable(&self) -> Box { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:613:27 [INFO] [stderr] | [INFO] [stderr] 613 | fn context(&self) -> &PricingContext { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:617:39 [INFO] [stderr] | [INFO] [stderr] 617 | fn restore(&mut self, any_saved: &Saveable) -> Result<(), qm::Error> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:638:39 [INFO] [stderr] | [INFO] [stderr] 638 | fn to_saved(opt_saveable: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:654:21 [INFO] [stderr] | [INFO] [stderr] 654 | saved_data: Box, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:662:32 [INFO] [stderr] | [INFO] [stderr] 662 | pub fn new(saved_data: Box) -> SavedBlackDiffusion { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:670:26 [INFO] [stderr] | [INFO] [stderr] 670 | fn as_any(&self) -> &Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/blackdiffusion.rs:671:38 [INFO] [stderr] | [INFO] [stderr] 671 | fn as_mut_any(&mut self) -> &mut Any { self } [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:29:22 [INFO] [stderr] | [INFO] [stderr] 29 | context: Box) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BumpablePricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:30:23 [INFO] [stderr] | [INFO] [stderr] 30 | -> Result, qm::Error>; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:36:48 [INFO] [stderr] | [INFO] [stderr] 36 | pub type TypeRegistry = Registry>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModelFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:39:40 [INFO] [stderr] | [INFO] [stderr] 39 | impl<'de> sd::Deserialize<'de> for Qrc { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModelFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:59:41 [INFO] [stderr] | [INFO] [stderr] 59 | pub type RcMonteCarloModelFactory = Qrc; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModelFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:66:33 [INFO] [stderr] | [INFO] [stderr] 66 | fn as_mc_context(&self) -> &MonteCarloContext; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:69:31 [INFO] [stderr] | [INFO] [stderr] 69 | fn as_bumpable(&self) -> &Bumpable; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:70:43 [INFO] [stderr] | [INFO] [stderr] 70 | fn as_mut_bumpable(&mut self) -> &mut Bumpable; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:76:32 [INFO] [stderr] | [INFO] [stderr] 76 | fn clone_box(&self) -> Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:82:32 [INFO] [stderr] | [INFO] [stderr] 82 | fn clone_box(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:87:20 [INFO] [stderr] | [INFO] [stderr] 87 | impl Clone for Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/models/mod.rs:88:28 [INFO] [stderr] | [INFO] [stderr] 88 | fn clone(&self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:34:16 [INFO] [stderr] | [INFO] [stderr] 34 | model: Box [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MonteCarloModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:59:38 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:59:76 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn PricerFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:70:50 [INFO] [stderr] | [INFO] [stderr] 70 | market_data: RcMarketData) -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:121:31 [INFO] [stderr] | [INFO] [stderr] 121 | fn as_bumpable(&self) -> &Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:122:43 [INFO] [stderr] | [INFO] [stderr] 122 | fn as_mut_bumpable(&mut self) -> &mut Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:123:48 [INFO] [stderr] | [INFO] [stderr] 123 | fn as_mut_time_bumpable(&mut self) -> &mut TimeBumpable { self } [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn TimeBumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:146:32 [INFO] [stderr] | [INFO] [stderr] 146 | fn clone_box(&self) -> Box { Box::new(self.clone()) } [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:150:55 [INFO] [stderr] | [INFO] [stderr] 150 | fn bump(&mut self, bump: &Bump, save: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:159:27 [INFO] [stderr] | [INFO] [stderr] 159 | fn context(&self) -> &PricingContext { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:163:35 [INFO] [stderr] | [INFO] [stderr] 163 | fn new_saveable(&self) -> Box { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/montecarlo.rs:167:35 [INFO] [stderr] | [INFO] [stderr] 167 | fn restore(&mut self, saved: &Saveable) -> Result<(), qm::Error> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:49:38 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn esd::Deserializer<'de>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:49:76 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn from_serial<'de>(de: &mut esd::Deserializer<'de>) -> Result, esd::Error> { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn PricerFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:60:50 [INFO] [stderr] | [INFO] [stderr] 60 | market_data: RcMarketData) -> Result, qm::Error> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:99:31 [INFO] [stderr] | [INFO] [stderr] 99 | fn as_bumpable(&self) -> &Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:100:43 [INFO] [stderr] | [INFO] [stderr] 100 | fn as_mut_bumpable(&mut self) -> &mut Bumpable { self } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:101:48 [INFO] [stderr] | [INFO] [stderr] 101 | fn as_mut_time_bumpable(&mut self) -> &mut TimeBumpable { self } [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn TimeBumpable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:125:32 [INFO] [stderr] | [INFO] [stderr] 125 | fn clone_box(&self) -> Box { Box::new(self.clone()) } [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:129:55 [INFO] [stderr] | [INFO] [stderr] 129 | fn bump(&mut self, bump: &Bump, save: Option<&mut Saveable>) [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:138:27 [INFO] [stderr] | [INFO] [stderr] 138 | fn context(&self) -> &PricingContext { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PricingContext` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:142:35 [INFO] [stderr] | [INFO] [stderr] 142 | fn new_saveable(&self) -> Box { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/selfpricer.rs:146:35 [INFO] [stderr] | [INFO] [stderr] 146 | fn restore(&mut self, saved: &Saveable) -> Result<(), qm::Error> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Saveable` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/mod.rs:26:50 [INFO] [stderr] | [INFO] [stderr] 26 | market_data: RcMarketData) -> Result, qm::Error>; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/mod.rs:32:48 [INFO] [stderr] | [INFO] [stderr] 32 | pub type TypeRegistry = Registry>>; [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn PricerFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/mod.rs:35:40 [INFO] [stderr] | [INFO] [stderr] 35 | impl<'de> sd::Deserialize<'de> for Qrc { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn PricerFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pricers/mod.rs:56:32 [INFO] [stderr] | [INFO] [stderr] 56 | pub type RcPricerFactory = Qrc; [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn PricerFactory` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solvers/impliedvol.rs:31:34 [INFO] [stderr] | [INFO] [stderr] 31 | fn solve(&self, pricer: &mut Pricer, target: f64, min: f64, max: f64) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solvers/impliedvol.rs:43:33 [INFO] [stderr] | [INFO] [stderr] 43 | fn price_given_vol(pricer: &mut Pricer, vol: f64, id: &str) -> Result { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solvers/impliedvol.rs:49:27 [INFO] [stderr] | [INFO] [stderr] 49 | fn single_vol_id(pricer: &Pricer) -> Result { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solvers/mod.rs:19:34 [INFO] [stderr] | [INFO] [stderr] 19 | fn solve(&self, pricer: &mut Pricer, target: f64, min: f64, max: f64) [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Pricer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:34:42 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn instrument_from_json(source: &mut Read, [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:47:27 [INFO] [stderr] | [INFO] [stderr] 47 | let mut opt = Dedup::>::new(instr_dedup, instruments_map); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:47:43 [INFO] [stderr] | [INFO] [stderr] 47 | let mut opt = Dedup::>::new(instr_dedup, instruments_map); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Instrument` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:63:40 [INFO] [stderr] | [INFO] [stderr] 63 | pub fn currency_from_json(source: &mut Read) [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:75:46 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn pricer_factory_from_json(source: &mut Read) [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:86:44 [INFO] [stderr] | [INFO] [stderr] 86 | pub fn fixing_table_from_json(source: &mut Read) [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:99:43 [INFO] [stderr] | [INFO] [stderr] 99 | pub fn market_data_from_json(source: &mut Read) [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:110:48 [INFO] [stderr] | [INFO] [stderr] 110 | pub fn report_generator_from_json(source: &mut Read) [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:122:39 [INFO] [stderr] | [INFO] [stderr] 122 | pub fn reports_from_json(source: &mut Read) [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:153:69 [INFO] [stderr] | [INFO] [stderr] 153 | pub fn write_results(reports: &[BoxReport], pretty: bool, out: &mut Write) [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/facade/mod.rs:183:62 [INFO] [stderr] | [INFO] [stderr] 183 | fn serialize_output(to_write: &T, pretty: bool, out: &mut Write) -> Result<(), qm::Error> [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] error[E0034]: multiple applicable items in scope [INFO] [stderr] --> src/risk/deltagamma.rs:79:81 [INFO] [stderr] | [INFO] [stderr] 79 | write!(diffs, "DeltaGammaReport: mismatching report {} != {}", self.type_id(), other.type_id())?; [INFO] [stderr] | ^^^^^^^ multiple `type_id` found [INFO] [stderr] | [INFO] [stderr] note: candidate #1 is defined in an impl of the trait `core::factories::TypeId` for the type `risk::deltagamma::DeltaGammaReport` [INFO] [stderr] --> src/risk/deltagamma.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | fn type_id(&self) -> &'static str { "DeltaGammaReport" } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: to disambiguate the method call, write `core::factories::TypeId::type_id(&self)` instead [INFO] [stderr] = note: candidate #2 is defined in an impl of the trait `std::any::Any` for the type `_` [INFO] [stderr] = help: to disambiguate the method call, write `std::any::Any::type_id(&self)` instead [INFO] [stderr] [INFO] [stderr] error[E0034]: multiple applicable items in scope [INFO] [stderr] --> src/risk/deltagamma.rs:79:98 [INFO] [stderr] | [INFO] [stderr] 79 | write!(diffs, "DeltaGammaReport: mismatching report {} != {}", self.type_id(), other.type_id())?; [INFO] [stderr] | ^^^^^^^ multiple `type_id` found [INFO] [stderr] | [INFO] [stderr] note: candidate #1 is defined in the trait `core::factories::TypeId` [INFO] [stderr] --> src/core/factories.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | fn type_id(&self) -> &'static str; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: to disambiguate the method call, write `core::factories::TypeId::type_id(&other)` instead [INFO] [stderr] note: candidate #2 is defined in the trait `std::any::Any` [INFO] [stderr] = help: to disambiguate the method call, write `std::any::Any::type_id(&other)` instead [INFO] [stderr] [INFO] [stderr] error[E0034]: multiple applicable items in scope [INFO] [stderr] --> src/risk/timebumped.rs:84:81 [INFO] [stderr] | [INFO] [stderr] 84 | write!(diffs, "TimeBumpedReport: mismatching report {} != {}", self.type_id(), other.type_id())?; [INFO] [stderr] | ^^^^^^^ multiple `type_id` found [INFO] [stderr] | [INFO] [stderr] note: candidate #1 is defined in an impl of the trait `core::factories::TypeId` for the type `risk::timebumped::TimeBumpedReport` [INFO] [stderr] --> src/risk/timebumped.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | fn type_id(&self) -> &'static str { "TimeBumpedReport" } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: to disambiguate the method call, write `core::factories::TypeId::type_id(&self)` instead [INFO] [stderr] = note: candidate #2 is defined in an impl of the trait `std::any::Any` for the type `_` [INFO] [stderr] = help: to disambiguate the method call, write `std::any::Any::type_id(&self)` instead [INFO] [stderr] [INFO] [stderr] error[E0034]: multiple applicable items in scope [INFO] [stderr] --> src/risk/timebumped.rs:84:98 [INFO] [stderr] | [INFO] [stderr] 84 | write!(diffs, "TimeBumpedReport: mismatching report {} != {}", self.type_id(), other.type_id())?; [INFO] [stderr] | ^^^^^^^ multiple `type_id` found [INFO] [stderr] | [INFO] [stderr] note: candidate #1 is defined in the trait `core::factories::TypeId` [INFO] [stderr] --> src/core/factories.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | fn type_id(&self) -> &'static str; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: to disambiguate the method call, write `core::factories::TypeId::type_id(&other)` instead [INFO] [stderr] note: candidate #2 is defined in the trait `std::any::Any` [INFO] [stderr] = help: to disambiguate the method call, write `std::any::Any::type_id(&other)` instead [INFO] [stderr] [INFO] [stderr] error[E0034]: multiple applicable items in scope [INFO] [stderr] --> src/risk/vegavolga.rs:88:80 [INFO] [stderr] | [INFO] [stderr] 88 | write!(diffs, "VegaVolgaReport: mismatching report {} != {}", self.type_id(), other.type_id())?; [INFO] [stderr] | ^^^^^^^ multiple `type_id` found [INFO] [stderr] | [INFO] [stderr] note: candidate #1 is defined in an impl of the trait `core::factories::TypeId` for the type `risk::vegavolga::VegaVolgaReport` [INFO] [stderr] --> src/risk/vegavolga.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | fn type_id(&self) -> &'static str { "VegaVolgaReport" } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: to disambiguate the method call, write `core::factories::TypeId::type_id(&self)` instead [INFO] [stderr] = note: candidate #2 is defined in an impl of the trait `std::any::Any` for the type `_` [INFO] [stderr] = help: to disambiguate the method call, write `std::any::Any::type_id(&self)` instead [INFO] [stderr] [INFO] [stderr] error[E0034]: multiple applicable items in scope [INFO] [stderr] --> src/risk/vegavolga.rs:88:97 [INFO] [stderr] | [INFO] [stderr] 88 | write!(diffs, "VegaVolgaReport: mismatching report {} != {}", self.type_id(), other.type_id())?; [INFO] [stderr] | ^^^^^^^ multiple `type_id` found [INFO] [stderr] | [INFO] [stderr] note: candidate #1 is defined in the trait `core::factories::TypeId` [INFO] [stderr] --> src/core/factories.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | fn type_id(&self) -> &'static str; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: to disambiguate the method call, write `core::factories::TypeId::type_id(&other)` instead [INFO] [stderr] note: candidate #2 is defined in the trait `std::any::Any` [INFO] [stderr] = help: to disambiguate the method call, write `std::any::Any::type_id(&other)` instead [INFO] [stderr] [INFO] [stderr] error: aborting due to 6 previous errors [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0034`. [INFO] [stderr] error: Could not compile `quantmath`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error[E0034]: multiple applicable items in scope [INFO] [stderr] --> src/risk/deltagamma.rs:79:81 [INFO] [stderr] | [INFO] [stderr] 79 | write!(diffs, "DeltaGammaReport: mismatching report {} != {}", self.type_id(), other.type_id())?; [INFO] [stderr] | ^^^^^^^ multiple `type_id` found [INFO] [stderr] | [INFO] [stderr] note: candidate #1 is defined in an impl of the trait `core::factories::TypeId` for the type `risk::deltagamma::DeltaGammaReport` [INFO] [stderr] --> src/risk/deltagamma.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | fn type_id(&self) -> &'static str { "DeltaGammaReport" } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: to disambiguate the method call, write `core::factories::TypeId::type_id(&self)` instead [INFO] [stderr] = note: candidate #2 is defined in an impl of the trait `std::any::Any` for the type `_` [INFO] [stderr] = help: to disambiguate the method call, write `std::any::Any::type_id(&self)` instead [INFO] [stderr] [INFO] [stderr] error[E0034]: multiple applicable items in scope [INFO] [stderr] --> src/risk/deltagamma.rs:79:98 [INFO] [stderr] | [INFO] [stderr] 79 | write!(diffs, "DeltaGammaReport: mismatching report {} != {}", self.type_id(), other.type_id())?; [INFO] [stderr] | ^^^^^^^ multiple `type_id` found [INFO] [stderr] | [INFO] [stderr] note: candidate #1 is defined in the trait `core::factories::TypeId` [INFO] [stderr] --> src/core/factories.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | fn type_id(&self) -> &'static str; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: to disambiguate the method call, write `core::factories::TypeId::type_id(&other)` instead [INFO] [stderr] note: candidate #2 is defined in the trait `std::any::Any` [INFO] [stderr] = help: to disambiguate the method call, write `std::any::Any::type_id(&other)` instead [INFO] [stderr] [INFO] [stderr] error[E0034]: multiple applicable items in scope [INFO] [stderr] --> src/risk/timebumped.rs:84:81 [INFO] [stderr] | [INFO] [stderr] 84 | write!(diffs, "TimeBumpedReport: mismatching report {} != {}", self.type_id(), other.type_id())?; [INFO] [stderr] | ^^^^^^^ multiple `type_id` found [INFO] [stderr] | [INFO] [stderr] note: candidate #1 is defined in an impl of the trait `core::factories::TypeId` for the type `risk::timebumped::TimeBumpedReport` [INFO] [stderr] --> src/risk/timebumped.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | fn type_id(&self) -> &'static str { "TimeBumpedReport" } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: to disambiguate the method call, write `core::factories::TypeId::type_id(&self)` instead [INFO] [stderr] = note: candidate #2 is defined in an impl of the trait `std::any::Any` for the type `_` [INFO] [stderr] = help: to disambiguate the method call, write `std::any::Any::type_id(&self)` instead [INFO] [stderr] [INFO] [stderr] error[E0034]: multiple applicable items in scope [INFO] [stderr] --> src/risk/timebumped.rs:84:98 [INFO] [stderr] | [INFO] [stderr] 84 | write!(diffs, "TimeBumpedReport: mismatching report {} != {}", self.type_id(), other.type_id())?; [INFO] [stderr] | ^^^^^^^ multiple `type_id` found [INFO] [stderr] | [INFO] [stderr] note: candidate #1 is defined in the trait `core::factories::TypeId` [INFO] [stderr] --> src/core/factories.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | fn type_id(&self) -> &'static str; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: to disambiguate the method call, write `core::factories::TypeId::type_id(&other)` instead [INFO] [stderr] note: candidate #2 is defined in the trait `std::any::Any` [INFO] [stderr] = help: to disambiguate the method call, write `std::any::Any::type_id(&other)` instead [INFO] [stderr] [INFO] [stderr] error[E0034]: multiple applicable items in scope [INFO] [stderr] --> src/risk/vegavolga.rs:88:80 [INFO] [stderr] | [INFO] [stderr] 88 | write!(diffs, "VegaVolgaReport: mismatching report {} != {}", self.type_id(), other.type_id())?; [INFO] [stderr] | ^^^^^^^ multiple `type_id` found [INFO] [stderr] | [INFO] [stderr] note: candidate #1 is defined in an impl of the trait `core::factories::TypeId` for the type `risk::vegavolga::VegaVolgaReport` [INFO] [stderr] --> src/risk/vegavolga.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | fn type_id(&self) -> &'static str { "VegaVolgaReport" } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: to disambiguate the method call, write `core::factories::TypeId::type_id(&self)` instead [INFO] [stderr] = note: candidate #2 is defined in an impl of the trait `std::any::Any` for the type `_` [INFO] [stderr] = help: to disambiguate the method call, write `std::any::Any::type_id(&self)` instead [INFO] [stderr] [INFO] [stderr] error[E0034]: multiple applicable items in scope [INFO] [stderr] --> src/risk/vegavolga.rs:88:97 [INFO] [stderr] | [INFO] [stderr] 88 | write!(diffs, "VegaVolgaReport: mismatching report {} != {}", self.type_id(), other.type_id())?; [INFO] [stderr] | ^^^^^^^ multiple `type_id` found [INFO] [stderr] | [INFO] [stderr] note: candidate #1 is defined in the trait `core::factories::TypeId` [INFO] [stderr] --> src/core/factories.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | fn type_id(&self) -> &'static str; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: to disambiguate the method call, write `core::factories::TypeId::type_id(&other)` instead [INFO] [stderr] note: candidate #2 is defined in the trait `std::any::Any` [INFO] [stderr] = help: to disambiguate the method call, write `std::any::Any::type_id(&other)` instead [INFO] [stderr] [INFO] [stderr] error: aborting due to 6 previous errors [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0034`. [INFO] [stderr] error: Could not compile `quantmath`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "11c8545619eabbcf27d6e8f53cef51349b956f11854dfd97907a5ce52dc67cd9"` [INFO] running `"docker" "rm" "-f" "11c8545619eabbcf27d6e8f53cef51349b956f11854dfd97907a5ce52dc67cd9"` [INFO] [stdout] 11c8545619eabbcf27d6e8f53cef51349b956f11854dfd97907a5ce52dc67cd9