[INFO] cloning repository https://github.com/dseevr/assassin [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dseevr/assassin" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdseevr%2Fassassin", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdseevr%2Fassassin'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] e0e1390316a5b7fd5b507a2cfaca263201aed68b [INFO] checking dseevr/assassin/e0e1390316a5b7fd5b507a2cfaca263201aed68b against master#f609b7e0586f81fefb3523e3e17adf779ac416be for pr-129466-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdseevr%2Fassassin" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/dseevr/assassin on toolchain f609b7e0586f81fefb3523e3e17adf779ac416be [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/dseevr/assassin [INFO] finished tweaking git repo https://github.com/dseevr/assassin [INFO] tweaked toml for git repo https://github.com/dseevr/assassin written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/dseevr/assassin already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded greenback v0.0.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 65444f8e0e19619ffb759f19aa104b15485a33cfd4967c94edb39b8433482c37 [INFO] running `Command { std: "docker" "start" "-a" "65444f8e0e19619ffb759f19aa104b15485a33cfd4967c94edb39b8433482c37", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "65444f8e0e19619ffb759f19aa104b15485a33cfd4967c94edb39b8433482c37", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "65444f8e0e19619ffb759f19aa104b15485a33cfd4967c94edb39b8433482c37", kill_on_drop: false }` [INFO] [stdout] 65444f8e0e19619ffb759f19aa104b15485a33cfd4967c94edb39b8433482c37 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d90bd1d993a7fe594057f83a16f450e8b6c699c6ecb2811bb46684bfdac2faa4 [INFO] running `Command { std: "docker" "start" "-a" "d90bd1d993a7fe594057f83a16f450e8b6c699c6ecb2811bb46684bfdac2faa4", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] Checking libc v0.2.33 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking num-traits v0.1.40 [INFO] [stderr] Checking lazy_static v0.2.11 [INFO] [stderr] Checking regex-syntax v0.4.1 [INFO] [stderr] Checking utf8-ranges v1.0.0 [INFO] [stderr] Checking log v0.3.8 [INFO] [stderr] Checking fnv v1.0.6 [INFO] [stderr] Checking greenback v0.0.3 [INFO] [stderr] Checking unreachable v1.0.0 [INFO] [stderr] Checking thread_local v0.3.4 [INFO] [stderr] Checking memchr v2.0.1 [INFO] [stderr] Checking time v0.1.38 [INFO] [stderr] Checking num-integer v0.1.35 [INFO] [stderr] Checking aho-corasick v0.6.4 [INFO] [stderr] Checking num-iter v0.1.34 [INFO] [stderr] Checking num v0.1.40 [INFO] [stderr] Checking chrono v0.4.0 [INFO] [stderr] Checking regex v0.2.3 [INFO] [stderr] Checking env_logger v0.4.3 [INFO] [stderr] Checking assassin v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/assassin/traits.rs:10:30 [INFO] [stdout] | [INFO] [stdout] 10 | fn commission_for(&self, &FilledOrder) -> Money; [INFO] [stdout] | ^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &FilledOrder` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/assassin/traits.rs:19:37 [INFO] [stdout] | [INFO] [stdout] 19 | fn before_simulation(&mut self, &Broker); [INFO] [stdout] | ^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Broker` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/assassin/traits.rs:20:36 [INFO] [stdout] | [INFO] [stdout] 20 | fn after_simulation(&mut self, &Broker); [INFO] [stdout] | ^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Broker` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/assassin/traits.rs:21:29 [INFO] [stdout] | [INFO] [stdout] 21 | fn run_logic(&mut self, &Broker) -> Vec; [INFO] [stdout] | ^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Broker` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/assassin/traits.rs:22:31 [INFO] [stdout] | [INFO] [stdout] 22 | fn show_bod_header(&self, &Broker); [INFO] [stdout] | ^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Broker` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/assassin/traits.rs:23:32 [INFO] [stdout] | [INFO] [stdout] 23 | fn show_eod_summary(&self, &Broker); [INFO] [stdout] | ^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Broker` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/assassin/broker.rs:22:30 [INFO] [stdout] | [INFO] [stdout] 22 | commission_schedule: Box, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 22 | commission_schedule: Box, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/assassin/broker.rs:24:20 [INFO] [stdout] | [INFO] [stdout] 24 | data_feed: Box, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 24 | data_feed: Box, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/assassin/simulation.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 11 | model: Box, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 11 | model: Box, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Utc` [INFO] [stdout] --> src/assassin/order.rs:162:13 [INFO] [stdout] | [INFO] [stdout] 162 | Utc::now(), // expiration date [INFO] [stdout] | ^^^ use of undeclared type `Utc` [INFO] [stdout] | [INFO] [stdout] = note: struct `assassin::position::tests::Utc` exists but is inaccessible [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Utc` [INFO] [stdout] --> src/assassin/order.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | Utc::now(), // date (of quote) [INFO] [stdout] | ^^^ use of undeclared type `Utc` [INFO] [stdout] | [INFO] [stdout] = note: struct `assassin::position::tests::Utc` exists but is inaccessible [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Utc` [INFO] [stdout] --> src/assassin/order.rs:191:31 [INFO] [stdout] | [INFO] [stdout] 191 | filled_date: Some(Utc::now()), [INFO] [stdout] | ^^^ use of undeclared type `Utc` [INFO] [stdout] | [INFO] [stdout] = note: struct `assassin::position::tests::Utc` exists but is inaccessible [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/assassin/broker.rs:46:34 [INFO] [stdout] | [INFO] [stdout] 46 | commission_schedule: Box, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 46 | commission_schedule: Box, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/assassin/broker.rs:47:24 [INFO] [stdout] | [INFO] [stdout] 47 | data_feed: Box, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 47 | data_feed: Box, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `dummy_quote` in this scope [INFO] [stdout] --> src/assassin/position.rs:167:19 [INFO] [stdout] | [INFO] [stdout] 167 | let foo = dummy_quote(); [INFO] [stdout] | ^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] note: function `assassin::order::tests::dummy_quote` exists but is inaccessible [INFO] [stdout] --> src/assassin/order.rs:159:5 [INFO] [stdout] | [INFO] [stdout] 159 | fn dummy_quote(bid: Money, ask: Money) -> Quote { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not accessible [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/assassin/position.rs:163:9 [INFO] [stdout] | [INFO] [stdout] 163 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/assassin/traits.rs:10:30 [INFO] [stdout] | [INFO] [stdout] 10 | fn commission_for(&self, &FilledOrder) -> Money; [INFO] [stdout] | ^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &FilledOrder` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/assassin/traits.rs:19:37 [INFO] [stdout] | [INFO] [stdout] 19 | fn before_simulation(&mut self, &Broker); [INFO] [stdout] | ^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Broker` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/assassin/traits.rs:20:36 [INFO] [stdout] | [INFO] [stdout] 20 | fn after_simulation(&mut self, &Broker); [INFO] [stdout] | ^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Broker` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/assassin/traits.rs:21:29 [INFO] [stdout] | [INFO] [stdout] 21 | fn run_logic(&mut self, &Broker) -> Vec; [INFO] [stdout] | ^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Broker` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/assassin/traits.rs:22:31 [INFO] [stdout] | [INFO] [stdout] 22 | fn show_bod_header(&self, &Broker); [INFO] [stdout] | ^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Broker` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/assassin/traits.rs:23:32 [INFO] [stdout] | [INFO] [stdout] 23 | fn show_eod_summary(&self, &Broker); [INFO] [stdout] | ^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Broker` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/assassin/simulation.rs:21:27 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn new(model: Box, broker: Box) -> Simulation { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 21 | pub fn new(model: Box, broker: Box) -> Simulation { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/assassin/broker.rs:22:30 [INFO] [stdout] | [INFO] [stdout] 22 | commission_schedule: Box, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 22 | commission_schedule: Box, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/assassin/broker.rs:24:20 [INFO] [stdout] | [INFO] [stdout] 24 | data_feed: Box, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 24 | data_feed: Box, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/assassin/simulation.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 11 | model: Box, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 11 | model: Box, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/assassin/broker.rs:46:34 [INFO] [stdout] | [INFO] [stdout] 46 | commission_schedule: Box, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 46 | commission_schedule: Box, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/assassin/broker.rs:47:24 [INFO] [stdout] | [INFO] [stdout] 47 | data_feed: Box, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 47 | data_feed: Box, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/assassin/simulation.rs:21:27 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn new(model: Box, broker: Box) -> Simulation { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 21 | pub fn new(model: Box, broker: Box) -> Simulation { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `order::Order` has no field named `quote` [INFO] [stdout] --> src/assassin/order.rs:188:13 [INFO] [stdout] | [INFO] [stdout] 188 | quote: Some(quote.clone()), [INFO] [stdout] | ^^^^^ `order::Order` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: all struct fields are already assigned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `order::Order` has no field named `fill_price` [INFO] [stdout] --> src/assassin/order.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | fill_price: Some(quote.ask()), [INFO] [stdout] | ^^^^^^^^^^ `order::Order` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: all struct fields are already assigned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `order::Order` has no field named `commission` [INFO] [stdout] --> src/assassin/order.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | commission: Some(Money::zero()), [INFO] [stdout] | ^^^^^^^^^^ `order::Order` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: all struct fields are already assigned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `order::Order` has no field named `filled_date` [INFO] [stdout] --> src/assassin/order.rs:191:13 [INFO] [stdout] | [INFO] [stdout] 191 | filled_date: Some(Utc::now()), [INFO] [stdout] | ^^^^^^^^^^^ `order::Order` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: all struct fields are already assigned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `order::Order` has no field named `closed_by_broker` [INFO] [stdout] --> src/assassin/order.rs:192:13 [INFO] [stdout] | [INFO] [stdout] 192 | closed_by_broker: false, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `order::Order` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: all struct fields are already assigned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `cost_basis` found for struct `order::Order` in the current scope [INFO] [stdout] --> src/assassin/order.rs:206:28 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Order { [INFO] [stdout] | ---------------- method `cost_basis` not found for this struct [INFO] [stdout] ... [INFO] [stdout] 206 | let cost_basis = o.cost_basis(); [INFO] [stdout] | ^^^^^^^^^^ method not found in `Order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `unrealized_value` found for struct `order::Order` in the current scope [INFO] [stdout] --> src/assassin/order.rs:207:28 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Order { [INFO] [stdout] | ---------------- method `unrealized_value` not found for this struct [INFO] [stdout] ... [INFO] [stdout] 207 | let unrealized = o.unrealized_value(&q1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `Order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `unrealized_value` found for struct `order::Order` in the current scope [INFO] [stdout] --> src/assassin/order.rs:208:24 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Order { [INFO] [stdout] | ---------------- method `unrealized_value` not found for this struct [INFO] [stdout] ... [INFO] [stdout] 208 | let profit = o.unrealized_value(&q2) - o.cost_basis(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `Order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `cost_basis` found for struct `order::Order` in the current scope [INFO] [stdout] --> src/assassin/order.rs:208:50 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Order { [INFO] [stdout] | ---------------- method `cost_basis` not found for this struct [INFO] [stdout] ... [INFO] [stdout] 208 | let profit = o.unrealized_value(&q2) - o.cost_basis(); [INFO] [stdout] | ^^^^^^^^^^ method not found in `Order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `fill_quote` and `fill_date` are never read [INFO] [stdout] --> src/assassin/filled_order.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct FilledOrder { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 16 | fill_quote: Quote, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 17 | fill_price: Money, [INFO] [stdout] 18 | fill_date: DateTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FilledOrder` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `margin_requirement`, `is_sell`, `buy_to_open`, `sell_to_open`, `sell_to_close`, and `is_close` are never used [INFO] [stdout] --> src/assassin/filled_order.rs:106:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl FilledOrder { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn margin_requirement(&self, price: Money) -> Money { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub fn is_sell(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn buy_to_open(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 126 | pub fn sell_to_open(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 134 | pub fn sell_to_close(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 142 | pub fn is_close(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_sell`, `buy_to_open`, `sell_to_open`, `sell_to_close`, `is_close`, and `margin_requirement` are never used [INFO] [stdout] --> src/assassin/order.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl Order { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn is_sell(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn buy_to_open(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn sell_to_open(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | pub fn sell_to_close(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | pub fn is_close(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn margin_requirement(&self, price: Money) -> Money { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `volume`, `implied_volatility`, `delta`, `gamma`, `vega`, and `open_interest` are never read [INFO] [stdout] --> src/assassin/quote.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Quote { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 18 | volume: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 19 | implied_volatility: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 20 | delta: f32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 21 | gamma: f32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 22 | vega: f32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 23 | open_interest: i32, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Quote` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `name`, `show_bod_header`, and `show_eod_summary` are never used [INFO] [stdout] --> src/assassin/traits.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 17 | pub trait Model { [INFO] [stdout] | ----- methods in this trait [INFO] [stdout] 18 | fn name(&self) -> &'static str; [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | fn show_bod_header(&self, &Broker); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 23 | fn show_eod_summary(&self, &Broker); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 17 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 13 previous errors; 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0425, E0433, E0560, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0425`. [INFO] [stdout] [INFO] [stderr] error: could not compile `assassin` (bin "assassin" test) due to 14 previous errors; 13 warnings emitted [INFO] running `Command { std: "docker" "inspect" "d90bd1d993a7fe594057f83a16f450e8b6c699c6ecb2811bb46684bfdac2faa4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d90bd1d993a7fe594057f83a16f450e8b6c699c6ecb2811bb46684bfdac2faa4", kill_on_drop: false }` [INFO] [stdout] d90bd1d993a7fe594057f83a16f450e8b6c699c6ecb2811bb46684bfdac2faa4