[INFO] cloning repository https://github.com/Ragora/RustVM [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Ragora/RustVM" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRagora%2FRustVM", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRagora%2FRustVM'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 92b15bf3cd2a4846518ec3989ee18b734fa92804 [INFO] checking Ragora/RustVM against master#385fa9d845dd326c6bbfd58c22244215e431948a for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRagora%2FRustVM" "/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/Ragora/RustVM on toolchain 385fa9d845dd326c6bbfd58c22244215e431948a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Ragora/RustVM [INFO] finished tweaking git repo https://github.com/Ragora/RustVM [INFO] tweaked toml for git repo https://github.com/Ragora/RustVM written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/Ragora/RustVM 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" "+385fa9d845dd326c6bbfd58c22244215e431948a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 16 packages [INFO] [stderr] Downgrading clap v3.2.25 -> v2.34.0 (latest: v4.5.4) [INFO] [stderr] Downgrading criterion v0.4.0 -> v0.3.6 (latest: v0.5.1) [INFO] [stderr] Downgrading criterion-plot v0.5.0 -> v0.4.5 (latest: v0.5.0) [INFO] [stderr] Adding csv v1.3.0 [INFO] [stderr] Adding csv-core v0.1.11 [INFO] [stderr] Adding memchr v2.7.2 [INFO] [stderr] Adding pest v2.7.9 [INFO] [stderr] Updating proc-macro2 v1.0.56 -> v1.0.79 [INFO] [stderr] Updating quote v1.0.26 -> v1.0.35 [INFO] [stderr] Adding serde_cbor v0.11.2 [INFO] [stderr] Updating syn v2.0.15 -> v2.0.58 [INFO] [stderr] Downgrading textwrap v0.16.0 -> v0.11.0 (latest: v0.16.1) [INFO] [stderr] Adding thiserror v1.0.58 [INFO] [stderr] Adding thiserror-impl v1.0.58 [INFO] [stderr] Adding ucd-trie v0.1.6 [INFO] [stderr] Adding unicode-width v0.1.11 [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded serde_derive v1.0.162 [INFO] [stderr] Downloaded bytestream v0.4.1 [INFO] [stderr] Downloaded plotters v0.3.4 [INFO] [stderr] Downloaded serde v1.0.162 [INFO] [stderr] Downloaded regex-syntax v0.7.1 [INFO] [stderr] Downloaded regex v1.8.1 [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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5dd0de0311dc76634337d53703e91c14af1fca72083057b11bb80b3f58253f82 [INFO] running `Command { std: "docker" "start" "-a" "5dd0de0311dc76634337d53703e91c14af1fca72083057b11bb80b3f58253f82", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5dd0de0311dc76634337d53703e91c14af1fca72083057b11bb80b3f58253f82", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5dd0de0311dc76634337d53703e91c14af1fca72083057b11bb80b3f58253f82", kill_on_drop: false }` [INFO] [stdout] 5dd0de0311dc76634337d53703e91c14af1fca72083057b11bb80b3f58253f82 [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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 09e309fc9bd0934d883721beccf9305828aba53bb034e37265435328d36f6921 [INFO] running `Command { std: "docker" "start" "-a" "09e309fc9bd0934d883721beccf9305828aba53bb034e37265435328d36f6921", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-ident v1.0.8 [INFO] [stderr] Compiling crossbeam-utils v0.8.15 [INFO] [stderr] Compiling libc v0.2.142 [INFO] [stderr] Compiling memoffset v0.8.0 [INFO] [stderr] Compiling serde v1.0.162 [INFO] [stderr] Compiling crossbeam-epoch v0.9.14 [INFO] [stderr] Checking memchr v2.7.2 [INFO] [stderr] Compiling num-traits v0.2.15 [INFO] [stderr] Checking either v1.8.1 [INFO] [stderr] Compiling serde_json v1.0.96 [INFO] [stderr] Checking ryu v1.0.13 [INFO] [stderr] Checking itoa v1.0.6 [INFO] [stderr] Checking plotters-backend v0.3.4 [INFO] [stderr] Compiling serde_derive v1.0.162 [INFO] [stderr] Checking unicode-width v0.1.11 [INFO] [stderr] Checking cast v0.3.0 [INFO] [stderr] Compiling proc-macro2 v1.0.79 [INFO] [stderr] Checking ucd-trie v0.1.6 [INFO] [stderr] Checking regex-syntax v0.7.1 [INFO] [stderr] Checking half v1.8.2 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking byteorder v1.4.3 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Checking plotters-svg v0.3.3 [INFO] [stderr] Checking walkdir v2.3.3 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking clap v2.34.0 [INFO] [stderr] Checking oorandom v11.1.3 [INFO] [stderr] Checking bytestream v0.4.1 [INFO] [stderr] Checking csv-core v0.1.11 [INFO] [stderr] Checking crossbeam-channel v0.5.8 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Compiling syn v2.0.58 [INFO] [stderr] Checking crossbeam-deque v0.8.3 [INFO] [stderr] Checking num_cpus v1.15.0 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking regex v1.8.1 [INFO] [stderr] Checking rayon-core v1.11.0 [INFO] [stderr] Checking plotters v0.3.4 [INFO] [stderr] Checking rayon v1.7.0 [INFO] [stderr] Checking criterion-plot v0.4.5 [INFO] [stderr] Compiling thiserror-impl v1.0.58 [INFO] [stderr] Checking csv v1.3.0 [INFO] [stderr] Checking serde_cbor v0.11.2 [INFO] [stderr] Checking thiserror v1.0.58 [INFO] [stderr] Checking pest v2.7.9 [INFO] [stderr] Checking tinytemplate v1.2.1 [INFO] [stderr] Checking PerfTest v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Borrow`, `rc::Rc` [INFO] [stdout] --> src/vm.rs:3:56 [INFO] [stdout] | [INFO] [stdout] 3 | collections::{HashMap}, hash::{Hasher, SipHasher}, rc::Rc, borrow::{BorrowMut, Borrow}, marker::PhantomData [INFO] [stdout] | ^^^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync` [INFO] [stdout] --> src/vm.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::sync; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/vm.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `std::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/util.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | use std::hash::{SipHasher, Hasher}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `std::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/util.rs:12:22 [INFO] [stdout] | [INFO] [stdout] 12 | let mut hasher = SipHasher::new(); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `std::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/vm.rs:3:44 [INFO] [stdout] | [INFO] [stdout] 3 | collections::{HashMap}, hash::{Hasher, SipHasher}, rc::Rc, borrow::{BorrowMut, Borrow}, marker::PhantomData [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `std::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/vm.rs:229:26 [INFO] [stdout] | [INFO] [stdout] 229 | let mut hasher = SipHasher::new(); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `std::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/vm.rs:824:30 [INFO] [stdout] | [INFO] [stdout] 824 | let mut hasher = SipHasher::new(); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::hash::SipHasher::new`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/util.rs:12:33 [INFO] [stdout] | [INFO] [stdout] 12 | let mut hasher = SipHasher::new(); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::hash::SipHasher::new`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/vm.rs:229:37 [INFO] [stdout] | [INFO] [stdout] 229 | let mut hasher = SipHasher::new(); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::hash::SipHasher::new`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/vm.rs:824:41 [INFO] [stdout] | [INFO] [stdout] 824 | let mut hasher = SipHasher::new(); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/vm.rs:1036:22 [INFO] [stdout] | [INFO] [stdout] 1035 | panic!("Not Implemented"); [INFO] [stdout] | ------------------------- any code following this expression is unreachable [INFO] [stdout] 1036 | let current_value = frame.stack.last_mut().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `parameters` [INFO] [stdout] --> src/vm.rs:52:40 [INFO] [stdout] | [INFO] [stdout] 52 | Function::NativeFunction { parameters, binding } => { [INFO] [stdout] | ^^^^^^^^^^ help: try ignoring the field: `parameters: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `parameters` [INFO] [stdout] --> src/vm.rs:58:41 [INFO] [stdout] | [INFO] [stdout] 58 | Function::VirtualFunction { parameters, instructions } => { [INFO] [stdout] | ^^^^^^^^^^ help: try ignoring the field: `parameters: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | let mut functions_write = self.functions.borrow_mut(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `phantom` [INFO] [stdout] --> src/vm.rs:294:48 [INFO] [stdout] | [INFO] [stdout] 294 | VariableReference::Global { value, phantom } => { [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `phantom: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `phantom` [INFO] [stdout] --> src/vm.rs:308:47 [INFO] [stdout] | [INFO] [stdout] 308 | VariableReference::Local { value, phantom } => { [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `phantom: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `phantom` [INFO] [stdout] --> src/vm.rs:319:48 [INFO] [stdout] | [INFO] [stdout] 319 | VariableReference::Global { value, phantom } => { [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `phantom: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `phantom` [INFO] [stdout] --> src/vm.rs:335:47 [INFO] [stdout] | [INFO] [stdout] 335 | VariableReference::Local { value, phantom } => { [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `phantom: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vm` [INFO] [stdout] --> src/vm.rs:412:31 [INFO] [stdout] | [INFO] [stdout] 412 | pub fn as_variable(&self, vm: &VirtualMachine, frame: &StackFrame) -> Result, &'static str> { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_vm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame` [INFO] [stdout] --> src/vm.rs:412:59 [INFO] [stdout] | [INFO] [stdout] 412 | pub fn as_variable(&self, vm: &VirtualMachine, frame: &StackFrame) -> Result, &'static str> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/vm.rs:520:49 [INFO] [stdout] | [INFO] [stdout] 520 | RawValue::String { 0: StringValue { value }} => { [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/vm.rs:528:53 [INFO] [stdout] | [INFO] [stdout] 528 | RawValue::Variable { 0: VariableValue { value }} => { [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vm` [INFO] [stdout] --> src/vm.rs:510:26 [INFO] [stdout] | [INFO] [stdout] 510 | fn negate(&mut self, vm: &mut VirtualMachine, frame: &StackFrame) { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_vm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame` [INFO] [stdout] --> src/vm.rs:510:58 [INFO] [stdout] | [INFO] [stdout] 510 | fn negate(&mut self, vm: &mut VirtualMachine, frame: &StackFrame) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/vm.rs:638:53 [INFO] [stdout] | [INFO] [stdout] 638 | RawValue::Variable { 0: VariableValue { value }} => { [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vm` [INFO] [stdout] --> src/vm.rs:613:30 [INFO] [stdout] | [INFO] [stdout] 613 | pub fn as_boolean(&self, vm: &VirtualMachine, frame: &StackFrame) -> bool { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_vm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame` [INFO] [stdout] --> src/vm.rs:613:58 [INFO] [stdout] | [INFO] [stdout] 613 | pub fn as_boolean(&self, vm: &VirtualMachine, frame: &StackFrame) -> bool { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/vm.rs:766:32 [INFO] [stdout] | [INFO] [stdout] 766 | OpCode::PushFloat (value) => "Error".to_owned(), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/vm.rs:768:35 [INFO] [stdout] | [INFO] [stdout] 768 | OpCode::PushInteger { value } => "Error".to_owned(), [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/vm.rs:769:34 [INFO] [stdout] | [INFO] [stdout] 769 | OpCode::PushString { value } => "Error".to_owned(), [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `target` [INFO] [stdout] --> src/vm.rs:771:28 [INFO] [stdout] | [INFO] [stdout] 771 | OpCode::Jump { target } => "Error".to_owned(), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `target: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `target` [INFO] [stdout] --> src/vm.rs:772:32 [INFO] [stdout] | [INFO] [stdout] 772 | OpCode::JumpTrue { target } => "Error".to_owned(), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `target: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `target` [INFO] [stdout] --> src/vm.rs:773:33 [INFO] [stdout] | [INFO] [stdout] 773 | OpCode::JumpFalse { target } => "Error".to_owned(), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `target: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `target` [INFO] [stdout] --> src/vm.rs:780:36 [INFO] [stdout] | [INFO] [stdout] 780 | OpCode::CallFunction { target } => "Error".to_owned(), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `target: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `variable` [INFO] [stdout] --> src/vm.rs:797:36 [INFO] [stdout] | [INFO] [stdout] 797 | OpCode::PushVariable { variable } => "Error".to_owned() [INFO] [stdout] | ^^^^^^^^ help: try ignoring the field: `variable: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `current_value` [INFO] [stdout] --> src/vm.rs:1036:26 [INFO] [stdout] | [INFO] [stdout] 1036 | let current_value = frame.stack.last_mut().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:924:13 [INFO] [stdout] | [INFO] [stdout] 924 | let mut continue_running: bool = true; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `negate` is never used [INFO] [stdout] --> src/vm.rs:510:8 [INFO] [stdout] | [INFO] [stdout] 439 | impl RawValue where State: Clone { [INFO] [stdout] | ---------------------------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 510 | fn negate(&mut self, vm: &mut VirtualMachine, frame: &StackFrame) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_type_of` is never used [INFO] [stdout] --> src/vm.rs:808:4 [INFO] [stdout] | [INFO] [stdout] 808 | fn print_type_of(_: &T) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate `PerfTest` should have a snake case name [INFO] [stdout] | [INFO] [stdout] = help: convert the identifier to snake case: `perf_test` [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 41 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking criterion v0.3.6 [INFO] [stdout] warning: unused imports: `Borrow`, `rc::Rc` [INFO] [stdout] --> src/vm.rs:3:56 [INFO] [stdout] | [INFO] [stdout] 3 | collections::{HashMap}, hash::{Hasher, SipHasher}, rc::Rc, borrow::{BorrowMut, Borrow}, marker::PhantomData [INFO] [stdout] | ^^^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync` [INFO] [stdout] --> src/vm.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::sync; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/vm.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `Instant`, `SipHasher` [INFO] [stdout] --> src/tests.rs:4:22 [INFO] [stdout] | [INFO] [stdout] 4 | use std::{time::{Instant}, collections::{HashMap}, hash::{SipHasher}, cell::RefCell}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc`, `RwLock` [INFO] [stdout] --> src/tests.rs:5:21 [INFO] [stdout] | [INFO] [stdout] 5 | use std::sync::{RwLock, Arc}; [INFO] [stdout] | ^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/tests.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync` [INFO] [stdout] --> src/tests.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | use std::sync; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::util::variable_name_to_identifier` [INFO] [stdout] --> src/tests.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::util::variable_name_to_identifier; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AddressValue`, `PushFloat`, `RawValue`, `VariableIdentifier`, `VariableReference` [INFO] [stdout] --> src/tests.rs:10:50 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::vm::{InstructionSequence, OpCode, VariableReference, Function, RawValue, VariableIdentifier, PushFloat, AddressValue, Virt... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `std::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/util.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | use std::hash::{SipHasher, Hasher}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `std::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/util.rs:12:22 [INFO] [stdout] | [INFO] [stdout] 12 | let mut hasher = SipHasher::new(); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `std::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/vm.rs:3:44 [INFO] [stdout] | [INFO] [stdout] 3 | collections::{HashMap}, hash::{Hasher, SipHasher}, rc::Rc, borrow::{BorrowMut, Borrow}, marker::PhantomData [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `std::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/vm.rs:229:26 [INFO] [stdout] | [INFO] [stdout] 229 | let mut hasher = SipHasher::new(); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `std::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/vm.rs:824:30 [INFO] [stdout] | [INFO] [stdout] 824 | let mut hasher = SipHasher::new(); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `std::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/tests.rs:4:63 [INFO] [stdout] | [INFO] [stdout] 4 | use std::{time::{Instant}, collections::{HashMap}, hash::{SipHasher}, cell::RefCell}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sync` [INFO] [stdout] --> benches/vm_benchmark.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{sync, collections::HashMap, time::Duration}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `RawValue`, `VariableIdentifier` [INFO] [stdout] --> benches/vm_benchmark.rs:4:120 [INFO] [stdout] | [INFO] [stdout] 4 | ...unction, VariableReference, PushFloat, AddressValue, RawValue, VariableIdentifier, SystemValue, StackFrame}, util::variable_name_to_id... [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::hash::SipHasher::new`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/util.rs:12:33 [INFO] [stdout] | [INFO] [stdout] 12 | let mut hasher = SipHasher::new(); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::hash::SipHasher::new`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/vm.rs:229:37 [INFO] [stdout] | [INFO] [stdout] 229 | let mut hasher = SipHasher::new(); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::hash::SipHasher::new`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/vm.rs:824:41 [INFO] [stdout] | [INFO] [stdout] 824 | let mut hasher = SipHasher::new(); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/vm.rs:1036:22 [INFO] [stdout] | [INFO] [stdout] 1035 | panic!("Not Implemented"); [INFO] [stdout] | ------------------------- any code following this expression is unreachable [INFO] [stdout] 1036 | let current_value = frame.stack.last_mut().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `parameters` [INFO] [stdout] --> src/vm.rs:52:40 [INFO] [stdout] | [INFO] [stdout] 52 | Function::NativeFunction { parameters, binding } => { [INFO] [stdout] | ^^^^^^^^^^ help: try ignoring the field: `parameters: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `parameters` [INFO] [stdout] --> src/vm.rs:58:41 [INFO] [stdout] | [INFO] [stdout] 58 | Function::VirtualFunction { parameters, instructions } => { [INFO] [stdout] | ^^^^^^^^^^ help: try ignoring the field: `parameters: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `raw_float` [INFO] [stdout] --> benches/vm_benchmark.rs:177:13 [INFO] [stdout] | [INFO] [stdout] 177 | let raw_float = result_value.as_float(&vm, &frame); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_raw_float` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> benches/vm_benchmark.rs:172:13 [INFO] [stdout] | [INFO] [stdout] 172 | let mut frame = StackFrame { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | let mut functions_write = self.functions.borrow_mut(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `running` is never read [INFO] [stdout] --> benches/vm_benchmark.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 10 | struct ApplicationState [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 11 | { [INFO] [stdout] 12 | pub running: bool [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ApplicationState` 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: unused variable: `phantom` [INFO] [stdout] --> src/vm.rs:294:48 [INFO] [stdout] | [INFO] [stdout] 294 | VariableReference::Global { value, phantom } => { [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `phantom: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `phantom` [INFO] [stdout] --> src/vm.rs:308:47 [INFO] [stdout] | [INFO] [stdout] 308 | VariableReference::Local { value, phantom } => { [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `phantom: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `phantom` [INFO] [stdout] --> src/vm.rs:319:48 [INFO] [stdout] | [INFO] [stdout] 319 | VariableReference::Global { value, phantom } => { [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `phantom: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `phantom` [INFO] [stdout] --> src/vm.rs:335:47 [INFO] [stdout] | [INFO] [stdout] 335 | VariableReference::Local { value, phantom } => { [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `phantom: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vm` [INFO] [stdout] --> src/vm.rs:412:31 [INFO] [stdout] | [INFO] [stdout] 412 | pub fn as_variable(&self, vm: &VirtualMachine, frame: &StackFrame) -> Result, &'static str> { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_vm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame` [INFO] [stdout] --> src/vm.rs:412:59 [INFO] [stdout] | [INFO] [stdout] 412 | pub fn as_variable(&self, vm: &VirtualMachine, frame: &StackFrame) -> Result, &'static str> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/vm.rs:520:49 [INFO] [stdout] | [INFO] [stdout] 520 | RawValue::String { 0: StringValue { value }} => { [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/vm.rs:528:53 [INFO] [stdout] | [INFO] [stdout] 528 | RawValue::Variable { 0: VariableValue { value }} => { [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vm` [INFO] [stdout] --> src/vm.rs:510:26 [INFO] [stdout] | [INFO] [stdout] 510 | fn negate(&mut self, vm: &mut VirtualMachine, frame: &StackFrame) { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_vm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame` [INFO] [stdout] --> src/vm.rs:510:58 [INFO] [stdout] | [INFO] [stdout] 510 | fn negate(&mut self, vm: &mut VirtualMachine, frame: &StackFrame) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/vm.rs:638:53 [INFO] [stdout] | [INFO] [stdout] 638 | RawValue::Variable { 0: VariableValue { value }} => { [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vm` [INFO] [stdout] --> src/vm.rs:613:30 [INFO] [stdout] | [INFO] [stdout] 613 | pub fn as_boolean(&self, vm: &VirtualMachine, frame: &StackFrame) -> bool { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_vm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame` [INFO] [stdout] --> src/vm.rs:613:58 [INFO] [stdout] | [INFO] [stdout] 613 | pub fn as_boolean(&self, vm: &VirtualMachine, frame: &StackFrame) -> bool { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/vm.rs:766:32 [INFO] [stdout] | [INFO] [stdout] 766 | OpCode::PushFloat (value) => "Error".to_owned(), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/vm.rs:768:35 [INFO] [stdout] | [INFO] [stdout] 768 | OpCode::PushInteger { value } => "Error".to_owned(), [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/vm.rs:769:34 [INFO] [stdout] | [INFO] [stdout] 769 | OpCode::PushString { value } => "Error".to_owned(), [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `target` [INFO] [stdout] --> src/vm.rs:771:28 [INFO] [stdout] | [INFO] [stdout] 771 | OpCode::Jump { target } => "Error".to_owned(), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `target: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `target` [INFO] [stdout] --> src/vm.rs:772:32 [INFO] [stdout] | [INFO] [stdout] 772 | OpCode::JumpTrue { target } => "Error".to_owned(), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `target: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `target` [INFO] [stdout] --> src/vm.rs:773:33 [INFO] [stdout] | [INFO] [stdout] 773 | OpCode::JumpFalse { target } => "Error".to_owned(), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `target: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `target` [INFO] [stdout] --> src/vm.rs:780:36 [INFO] [stdout] | [INFO] [stdout] 780 | OpCode::CallFunction { target } => "Error".to_owned(), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `target: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `variable` [INFO] [stdout] --> src/vm.rs:797:36 [INFO] [stdout] | [INFO] [stdout] 797 | OpCode::PushVariable { variable } => "Error".to_owned() [INFO] [stdout] | ^^^^^^^^ help: try ignoring the field: `variable: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `current_value` [INFO] [stdout] --> src/vm.rs:1036:26 [INFO] [stdout] | [INFO] [stdout] 1036 | let current_value = frame.stack.last_mut().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:924:13 [INFO] [stdout] | [INFO] [stdout] 924 | let mut continue_running: bool = true; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `negate` is never used [INFO] [stdout] --> src/vm.rs:510:8 [INFO] [stdout] | [INFO] [stdout] 439 | impl RawValue where State: Clone { [INFO] [stdout] | ---------------------------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 510 | fn negate(&mut self, vm: &mut VirtualMachine, frame: &StackFrame) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_type_of` is never used [INFO] [stdout] --> src/vm.rs:808:4 [INFO] [stdout] | [INFO] [stdout] 808 | fn print_type_of(_: &T) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 47 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.37s [INFO] running `Command { std: "docker" "inspect" "09e309fc9bd0934d883721beccf9305828aba53bb034e37265435328d36f6921", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "09e309fc9bd0934d883721beccf9305828aba53bb034e37265435328d36f6921", kill_on_drop: false }` [INFO] [stdout] 09e309fc9bd0934d883721beccf9305828aba53bb034e37265435328d36f6921