[INFO] fetching crate lento-quick-js 0.4.2-alpha.0... [INFO] checking lento-quick-js-0.4.2-alpha.0 against master#350d0ef0ec0493e6d21cfb265cb8211a0e74d766 for pr-145342-1 [INFO] extracting crate lento-quick-js 0.4.2-alpha.0 into /workspace/builds/worker-6-tc1/source [INFO] started tweaking crates.io crate lento-quick-js 0.4.2-alpha.0 [INFO] removed 0 missing examples [INFO] finished tweaking crates.io crate lento-quick-js 0.4.2-alpha.0 [INFO] tweaked toml for crates.io crate lento-quick-js 0.4.2-alpha.0 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate lento-quick-js 0.4.2-alpha.0 on toolchain 350d0ef0ec0493e6d21cfb265cb8211a0e74d766 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate lento-quick-js 0.4.2-alpha.0 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" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded rquickjs-sys v0.8.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c45607e4aabf012d5392236f790d953784144acc25419006cc5d562419807eb1 [INFO] running `Command { std: "docker" "start" "-a" "c45607e4aabf012d5392236f790d953784144acc25419006cc5d562419807eb1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c45607e4aabf012d5392236f790d953784144acc25419006cc5d562419807eb1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c45607e4aabf012d5392236f790d953784144acc25419006cc5d562419807eb1", kill_on_drop: false }` [INFO] [stdout] c45607e4aabf012d5392236f790d953784144acc25419006cc5d562419807eb1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 639f25816c450b7a1863513425e4b1bcd720ebf3558e63f2f7772f042a3f776e [INFO] running `Command { std: "docker" "start" "-a" "639f25816c450b7a1863513425e4b1bcd720ebf3558e63f2f7772f042a3f776e", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling libc v0.2.154 [INFO] [stderr] Compiling proc-macro2 v1.0.82 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling glob v0.3.2 [INFO] [stderr] Compiling rustix v0.38.34 [INFO] [stderr] Compiling prettyplease v0.2.20 [INFO] [stderr] Compiling bitflags v2.8.0 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling log v0.4.21 [INFO] [stderr] Compiling linux-raw-sys v0.4.15 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling either v1.13.0 [INFO] [stderr] Compiling clang-sys v1.8.1 [INFO] [stderr] Compiling libloading v0.8.6 [INFO] [stderr] Compiling bindgen v0.69.5 [INFO] [stderr] Compiling humantime v2.1.0 [INFO] [stderr] Compiling termcolor v1.4.1 [INFO] [stderr] Compiling home v0.5.11 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Compiling itertools v0.12.1 [INFO] [stderr] Compiling lazycell v1.3.0 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Compiling syn v2.0.61 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling autocfg v1.3.0 [INFO] [stderr] Compiling is-terminal v0.4.13 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling cc v1.0.97 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling which v4.4.2 [INFO] [stderr] Compiling anyhow v1.0.86 [INFO] [stderr] Checking iana-time-zone v0.1.60 [INFO] [stderr] Compiling cexpr v0.6.0 [INFO] [stderr] Checking once_cell v1.19.0 [INFO] [stderr] Checking chrono v0.4.38 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling env_logger v0.10.2 [INFO] [stderr] Compiling pretty_env_logger v0.5.0 [INFO] [stderr] Compiling rquickjs-sys v0.8.1 [INFO] [stderr] Checking lento-quick-js v0.4.2-alpha.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/bindings/convert.rs:295:13 [INFO] [stdout] | [INFO] [stdout] 295 | extern fn finalizer(rt: *mut JSRuntime, val: JSValue) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::any::Any` [INFO] [stdout] --> src/bindings/mod.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::any::Any; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `JSRefCountHeader` in crate `q` [INFO] [stdout] --> src/bindings/value.rs:355:60 [INFO] [stdout] | [INFO] [stdout] 355 | let ptr = unsafe { self.value.u.ptr as *mut q::JSRefCountHeader }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ not found in `q` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `JSRefCountHeader` in crate `q` [INFO] [stdout] --> src/bindings/value.rs:356:31 [INFO] [stdout] | [INFO] [stdout] 356 | let pref: &mut q::JSRefCountHeader = &mut unsafe { *ptr }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ not found in `q` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `JSRefCountHeader` in crate `q` [INFO] [stdout] --> src/bindings/mod.rs:252:60 [INFO] [stdout] | [INFO] [stdout] 252 | let ptr = unsafe { self.value.u.ptr as *mut q::JSRefCountHeader }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ not found in `q` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `JSRefCountHeader` in crate `q` [INFO] [stdout] --> src/bindings/mod.rs:253:31 [INFO] [stdout] | [INFO] [stdout] 253 | let pref: &mut q::JSRefCountHeader = &mut unsafe { *ptr }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ not found in `q` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/bindings/convert.rs:295:13 [INFO] [stdout] | [INFO] [stdout] 295 | extern fn finalizer(rt: *mut JSRuntime, val: JSValue) { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::any::Any` [INFO] [stdout] --> src/bindings/mod.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::any::Any; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::any::Any` [INFO] [stdout] --> src/lib.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | use std::any::Any; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/bindings/convert.rs:531:56 [INFO] [stdout] | [INFO] [stdout] 531 | ... let datetime = chrono::Utc.timestamp_millis(f); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/bindings/convert.rs:535:56 [INFO] [stdout] | [INFO] [stdout] 535 | ... let datetime = chrono::Utc.timestamp_millis(f); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/bindings/compile.rs:142:17 [INFO] [stdout] | [INFO] [stdout] 142 | assert_eq!(res.to_value().unwrap(), JsValue::Int(7 * 5)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/bindings/compile.rs:177:17 [INFO] [stdout] | [INFO] [stdout] 177 | assert_eq!(res.to_value().unwrap(), JsValue::Int(7 * 5)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/bindings/convert.rs:531:56 [INFO] [stdout] | [INFO] [stdout] 531 | ... let datetime = chrono::Utc.timestamp_millis(f); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/bindings/convert.rs:535:56 [INFO] [stdout] | [INFO] [stdout] 535 | ... let datetime = chrono::Utc.timestamp_millis(f); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::any::Any` [INFO] [stdout] --> src/lib.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | use std::any::Any; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/bindings/convert.rs:188:13 [INFO] [stdout] | [INFO] [stdout] 188 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/bindings/convert.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rt` [INFO] [stdout] --> src/bindings/convert.rs:295:33 [INFO] [stdout] | [INFO] [stdout] 295 | extern fn finalizer(rt: *mut JSRuntime, val: JSValue) { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_rt` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/bindings/mod.rs:409:9 [INFO] [stdout] | [INFO] [stdout] 409 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/bindings/mod.rs:422:9 [INFO] [stdout] | [INFO] [stdout] 422 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/bindings/mod.rs:554:13 [INFO] [stdout] | [INFO] [stdout] 554 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/value/mod.rs:65:21 [INFO] [stdout] | [INFO] [stdout] 64 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] 65 | let v = unsafe { Box::from_raw(self.js_value) }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:46:22 [INFO] [stdout] | [INFO] [stdout] 46 | assert_eq!(c.eval(code), res,); [INFO] [stdout] | ^^^^------ argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 46 | assert_eq!(c.eval(code, /* &str */), res,); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> src/loader.rs:23:13 [INFO] [stdout] | [INFO] [stdout] 23 | Err(err) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result` [INFO] [stdout] --> src/tests.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | assert_eq!(c.eval(code), res,); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | Result [INFO] [stdout] | Result [INFO] [stdout] | [INFO] [stdout] note: the following types would have to `impl` their required traits for this operation to be valid [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | pub enum ExecutionError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] | [INFO] [stdout] ::: src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `ExecutionError` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 + #[derive(PartialEq)] [INFO] [stdout] 63 | pub enum ExecutionError { [INFO] [stdout] | [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/loader.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | let mut loader = &mut *(opaque as *mut _ as *mut Box); [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: methods `into_inner` and `as_inner` are never used [INFO] [stdout] --> src/bindings/mod.rs:176:15 [INFO] [stdout] | [INFO] [stdout] 163 | impl<'a> OwnedValueRef<'a> { [INFO] [stdout] | -------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 176 | unsafe fn into_inner(self) -> q::JSValue { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 183 | pub(crate) fn as_inner(&self) -> &q::JSValue { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `into_value`, `property_tag`, and `is_promise` are never used [INFO] [stdout] --> src/bindings/mod.rs:276:8 [INFO] [stdout] | [INFO] [stdout] 267 | impl<'a> OwnedObjectRef<'a> { [INFO] [stdout] | --------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 276 | fn into_value(self) -> OwnedValueRef<'a> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 281 | fn property_tag(&self, name: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 295 | fn is_promise(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compile` is never used [INFO] [stdout] --> src/bindings/compile.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn compile<'a>( [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `from_bytecode` is never used [INFO] [stdout] --> src/bindings/compile.rs:77:8 [INFO] [stdout] | [INFO] [stdout] 77 | pub fn from_bytecode<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_c` is never used [INFO] [stdout] --> src/bindings/value.rs:61:19 [INFO] [stdout] | [INFO] [stdout] 33 | impl JsTag { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 61 | pub(super) fn to_c(self) -> i32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_bool`, `try_into_compiled_function`, and `try_into_module` are never used [INFO] [stdout] --> src/bindings/value.rs:308:19 [INFO] [stdout] | [INFO] [stdout] 211 | impl<'a> OwnedJsValue<'a> { [INFO] [stdout] | ------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 308 | pub(crate) fn to_bool(&self) -> Result { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 323 | pub(crate) fn try_into_compiled_function(self) -> Result, ValueError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 327 | pub(crate) fn try_into_module(self) -> Result, ValueError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:79:22 [INFO] [stdout] | [INFO] [stdout] 79 | assert_eq!(c.eval(&full_code), res,); [INFO] [stdout] | ^^^^------------ argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 79 | assert_eq!(c.eval(&full_code, /* &str */), res,); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> src/bindings/value.rs:389:5 [INFO] [stdout] | [INFO] [stdout] 388 | pub struct OwnedJsArray<'a> { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 389 | value: OwnedJsValue<'a>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result` [INFO] [stdout] --> src/tests.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | assert_eq!(c.eval(&full_code), res,); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | Result [INFO] [stdout] | Result [INFO] [stdout] | [INFO] [stdout] note: the following types would have to `impl` their required traits for this operation to be valid [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | pub enum ExecutionError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] | [INFO] [stdout] ::: src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `ExecutionError` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 + #[derive(PartialEq)] [INFO] [stdout] 63 | pub enum ExecutionError { [INFO] [stdout] | [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `try_from_value` is never used [INFO] [stdout] --> src/bindings/value.rs:541:19 [INFO] [stdout] | [INFO] [stdout] 540 | impl<'a> JsCompiledFunction<'a> { [INFO] [stdout] | ------------------------------- associated function in this implementation [INFO] [stdout] 541 | pub(crate) fn try_from_value(value: OwnedJsValue<'a>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:82:18 [INFO] [stdout] | [INFO] [stdout] 82 | assert_eq!(c.eval_as::("true").unwrap(), true,); [INFO] [stdout] | ^^^^^^^^^^^^^^^-------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:302:12 [INFO] [stdout] | [INFO] [stdout] 302 | pub fn eval_as(&self, code: &str, filename: &str) -> Result [INFO] [stdout] | ^^^^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 82 | assert_eq!(c.eval_as::("true", /* &str */).unwrap(), true,); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:83:18 [INFO] [stdout] | [INFO] [stdout] 83 | assert_eq!(c.eval_as::("1 + 2").unwrap(), 3,); [INFO] [stdout] | ^^^^^^^^^^^^^^--------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:302:12 [INFO] [stdout] | [INFO] [stdout] 302 | pub fn eval_as(&self, code: &str, filename: &str) -> Result [INFO] [stdout] | ^^^^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 83 | assert_eq!(c.eval_as::("1 + 2", /* &str */).unwrap(), 3,); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:85:27 [INFO] [stdout] | [INFO] [stdout] 85 | let value: String = c.eval_as("var x = 44; x.toString()").unwrap(); [INFO] [stdout] | ^^^^^^^---------------------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:302:12 [INFO] [stdout] | [INFO] [stdout] 302 | pub fn eval_as(&self, code: &str, filename: &str) -> Result [INFO] [stdout] | ^^^^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 85 | let value: String = c.eval_as("var x = 44; x.toString()", /* &str */).unwrap(); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:105:11 [INFO] [stdout] | [INFO] [stdout] 105 | c.eval( [INFO] [stdout] | ___________^^^^- [INFO] [stdout] 106 | | r#" [INFO] [stdout] 107 | | !!!! [INFO] [stdout] 108 | | "# [INFO] [stdout] 109 | | ), [INFO] [stdout] | |_________- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 105 ~ c.eval(r#" [INFO] [stdout] 106 + !!!! [INFO] [stdout] 107 ~ "#, /* &str */), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result` [INFO] [stdout] --> src/tests.rs:104:5 [INFO] [stdout] | [INFO] [stdout] 104 | / assert_eq!( [INFO] [stdout] 105 | | c.eval( [INFO] [stdout] 106 | | r#" [INFO] [stdout] 107 | | !!!! [INFO] [stdout] ... | [INFO] [stdout] 112 | | )) [INFO] [stdout] 113 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | |_____| [INFO] [stdout] | |_____Result [INFO] [stdout] | Result [INFO] [stdout] | [INFO] [stdout] note: the following types would have to `impl` their required traits for this operation to be valid [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | pub enum ExecutionError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] | [INFO] [stdout] ::: src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `ExecutionError` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 + #[derive(PartialEq)] [INFO] [stdout] 63 | pub enum ExecutionError { [INFO] [stdout] | [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:120:11 [INFO] [stdout] | [INFO] [stdout] 120 | c.eval( [INFO] [stdout] | ___________^^^^- [INFO] [stdout] 121 | | r#" [INFO] [stdout] 122 | | function f() { [INFO] [stdout] 123 | | throw new Error("My Error"); [INFO] [stdout] ... | [INFO] [stdout] 126 | | "# [INFO] [stdout] 127 | | ), [INFO] [stdout] | |_________- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 120 ~ c.eval(r#" [INFO] [stdout] 121 + function f() { [INFO] [stdout] 122 + throw new Error("My Error"); [INFO] [stdout] 123 + } [INFO] [stdout] 124 + f(); [INFO] [stdout] 125 ~ "#, /* &str */), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result` [INFO] [stdout] --> src/tests.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | / assert_eq!( [INFO] [stdout] 120 | | c.eval( [INFO] [stdout] 121 | | r#" [INFO] [stdout] 122 | | function f() { [INFO] [stdout] ... | [INFO] [stdout] 128 | | Err(ExecutionError::Exception("Error: My Error".into(),)) [INFO] [stdout] 129 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | |_____| [INFO] [stdout] | |_____Result [INFO] [stdout] | Result [INFO] [stdout] | [INFO] [stdout] note: the following types would have to `impl` their required traits for this operation to be valid [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | pub enum ExecutionError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] | [INFO] [stdout] ::: src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `ExecutionError` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 + #[derive(PartialEq)] [INFO] [stdout] 63 | pub enum ExecutionError { [INFO] [stdout] | [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:137:10 [INFO] [stdout] | [INFO] [stdout] 137 | .eval( [INFO] [stdout] | __________^^^^- [INFO] [stdout] 138 | | r#" [INFO] [stdout] 139 | | new Promise((resolve, _) => { [INFO] [stdout] 140 | | resolve(33); [INFO] [stdout] 141 | | }) [INFO] [stdout] 142 | | "#, [INFO] [stdout] 143 | | ) [INFO] [stdout] | |_________- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 137 ~ .eval(r#" [INFO] [stdout] 138 + new Promise((resolve, _) => { [INFO] [stdout] 139 + resolve(33); [INFO] [stdout] 140 + }) [INFO] [stdout] 141 + "#, /* &str */) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:145:5 [INFO] [stdout] | [INFO] [stdout] 145 | assert_eq!(value, JsValue::Int(33)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:147:17 [INFO] [stdout] | [INFO] [stdout] 147 | let res = c.eval( [INFO] [stdout] | _________________^^^^- [INFO] [stdout] 148 | | r#" [INFO] [stdout] 149 | | new Promise((_resolve, reject) => { [INFO] [stdout] 150 | | reject("Failed..."); [INFO] [stdout] 151 | | }) [INFO] [stdout] 152 | | "#, [INFO] [stdout] 153 | | ); [INFO] [stdout] | |_____- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 147 ~ let res = c.eval(r#" [INFO] [stdout] 148 + new Promise((_resolve, reject) => { [INFO] [stdout] 149 + reject("Failed..."); [INFO] [stdout] 150 + }) [INFO] [stdout] 151 ~ "#, /* &str */); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result` [INFO] [stdout] --> src/tests.rs:154:5 [INFO] [stdout] | [INFO] [stdout] 154 | / assert_eq!( [INFO] [stdout] 155 | | res, [INFO] [stdout] 156 | | Err(ExecutionError::Exception(JsValue::String( [INFO] [stdout] 157 | | "Failed...".into() [INFO] [stdout] 158 | | ))) [INFO] [stdout] 159 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | |_____| [INFO] [stdout] | |_____Result [INFO] [stdout] | Result [INFO] [stdout] | [INFO] [stdout] note: the following types would have to `impl` their required traits for this operation to be valid [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | pub enum ExecutionError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] | [INFO] [stdout] ::: src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `ExecutionError` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 + #[derive(PartialEq)] [INFO] [stdout] 63 | pub enum ExecutionError { [INFO] [stdout] | [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:166:25 [INFO] [stdout] | [INFO] [stdout] 166 | let value = context.eval_as::("someGlobalVariable").unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^---------------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:302:12 [INFO] [stdout] | [INFO] [stdout] 302 | pub fn eval_as(&self, code: &str, filename: &str) -> Result [INFO] [stdout] | ^^^^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 166 | let value = context.eval_as::("someGlobalVariable", /* &str */).unwrap(); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:174:5 [INFO] [stdout] | [INFO] [stdout] 174 | / assert_eq!( [INFO] [stdout] 175 | | c.call_function("parseInt", vec!["22"]).unwrap(), [INFO] [stdout] 176 | | JsValue::Int(22), [INFO] [stdout] 177 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | |_____| [INFO] [stdout] | |_____value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:179:7 [INFO] [stdout] | [INFO] [stdout] 179 | c.eval( [INFO] [stdout] | _______^^^^- [INFO] [stdout] 180 | | r#" [INFO] [stdout] 181 | | function add(a, b) { [INFO] [stdout] 182 | | return a + b; [INFO] [stdout] 183 | | } [INFO] [stdout] 184 | | "#, [INFO] [stdout] 185 | | ) [INFO] [stdout] | |_____- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 179 ~ c.eval(r#" [INFO] [stdout] 180 + function add(a, b) { [INFO] [stdout] 181 + return a + b; [INFO] [stdout] 182 + } [INFO] [stdout] 183 + "#, /* &str */) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:187:5 [INFO] [stdout] | [INFO] [stdout] 187 | / assert_eq!( [INFO] [stdout] 188 | | c.call_function("add", vec![5, 7]).unwrap(), [INFO] [stdout] 189 | | JsValue::Int(12), [INFO] [stdout] 190 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | |_____| [INFO] [stdout] | |_____value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:192:7 [INFO] [stdout] | [INFO] [stdout] 192 | c.eval( [INFO] [stdout] | _______^^^^- [INFO] [stdout] 193 | | r#" [INFO] [stdout] 194 | | function sumArray(arr) { [INFO] [stdout] 195 | | let sum = 0; [INFO] [stdout] ... | [INFO] [stdout] 201 | | "#, [INFO] [stdout] 202 | | ) [INFO] [stdout] | |_____- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 192 ~ c.eval(r#" [INFO] [stdout] 193 + function sumArray(arr) { [INFO] [stdout] 194 + let sum = 0; [INFO] [stdout] 195 + for (const value of arr) { [INFO] [stdout] 196 + sum += value; [INFO] [stdout] 197 + } [INFO] [stdout] 198 + return sum; [INFO] [stdout] 199 + } [INFO] [stdout] 200 + "#, /* &str */) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:204:5 [INFO] [stdout] | [INFO] [stdout] 204 | / assert_eq!( [INFO] [stdout] 205 | | c.call_function("sumArray", vec![vec![1, 2, 3]]).unwrap(), [INFO] [stdout] 206 | | JsValue::Int(6), [INFO] [stdout] 207 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | |_____| [INFO] [stdout] | |_____value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:209:7 [INFO] [stdout] | [INFO] [stdout] 209 | c.eval( [INFO] [stdout] | _______^^^^- [INFO] [stdout] 210 | | r#" [INFO] [stdout] 211 | | function addObject(obj) { [INFO] [stdout] 212 | | let sum = 0; [INFO] [stdout] ... | [INFO] [stdout] 218 | | "#, [INFO] [stdout] 219 | | ) [INFO] [stdout] | |_____- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 209 ~ c.eval(r#" [INFO] [stdout] 210 + function addObject(obj) { [INFO] [stdout] 211 + let sum = 0; [INFO] [stdout] 212 + for (const key of Object.keys(obj)) { [INFO] [stdout] 213 + sum += obj[key]; [INFO] [stdout] 214 + } [INFO] [stdout] 215 + return sum; [INFO] [stdout] 216 + } [INFO] [stdout] 217 + "#, /* &str */) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `value::JsValue: From>` is not satisfied [INFO] [stdout] --> src/tests.rs:226:11 [INFO] [stdout] | [INFO] [stdout] 226 | c.call_function("addObject", vec![obj]).unwrap(), [INFO] [stdout] | ^^^^^^^^^^^^^ the trait `From>` is not implemented for `value::JsValue` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `From`: [INFO] [stdout] `value::JsValue` implements `From<&str>` [INFO] [stdout] `value::JsValue` implements `From>` [INFO] [stdout] `value::JsValue` implements `From` [INFO] [stdout] `value::JsValue` implements `From>` [INFO] [stdout] `value::JsValue` implements `From` [INFO] [stdout] `value::JsValue` implements `From` [INFO] [stdout] `value::JsValue` implements `From` [INFO] [stdout] `value::JsValue` implements `From` [INFO] [stdout] and 4 others [INFO] [stdout] = note: required for `HashMap` to implement `Into` [INFO] [stdout] note: required by a bound in `Context::call_function` [INFO] [stdout] --> src/lib.rs:357:45 [INFO] [stdout] | [INFO] [stdout] 354 | pub fn call_function( [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 357 | args: impl IntoIterator>, [INFO] [stdout] | ^^^^^^^^^^^^^ required by this bound in `Context::call_function` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:225:5 [INFO] [stdout] | [INFO] [stdout] 225 | / assert_eq!( [INFO] [stdout] 226 | | c.call_function("addObject", vec![obj]).unwrap(), [INFO] [stdout] 227 | | JsValue::Int(60), [INFO] [stdout] 228 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | |_____| [INFO] [stdout] | |_____value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:234:7 [INFO] [stdout] | [INFO] [stdout] 234 | c.eval(" function strLen(s) { return s.length; } ").unwrap(); [INFO] [stdout] | ^^^^--------------------------------------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 234 | c.eval(" function strLen(s) { return s.length; } ", /* &str */).unwrap(); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:238:5 [INFO] [stdout] | [INFO] [stdout] 238 | assert_eq!(v, JsValue::Int(200_000)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:245:7 [INFO] [stdout] | [INFO] [stdout] 245 | c.eval( [INFO] [stdout] | _______^^^^- [INFO] [stdout] 246 | | r#" [INFO] [stdout] 247 | | function asyncOk() { [INFO] [stdout] 248 | | return new Promise((resolve, _) => { [INFO] [stdout] ... | [INFO] [stdout] 258 | | "#, [INFO] [stdout] 259 | | ) [INFO] [stdout] | |_____- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 245 ~ c.eval(r#" [INFO] [stdout] 246 + function asyncOk() { [INFO] [stdout] 247 + return new Promise((resolve, _) => { [INFO] [stdout] 248 + resolve(33); [INFO] [stdout] 249 + }); [INFO] [stdout] 250 + } [INFO] [stdout] 251 + [INFO] [stdout] 252 + function asyncErr() { [INFO] [stdout] 253 + return new Promise((_resolve, reject) => { [INFO] [stdout] 254 + reject("Failed..."); [INFO] [stdout] 255 + }); [INFO] [stdout] 256 + } [INFO] [stdout] 257 + "#, /* &str */) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:263:5 [INFO] [stdout] | [INFO] [stdout] 263 | assert_eq!(value, JsValue::Int(33)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result` [INFO] [stdout] --> src/tests.rs:266:5 [INFO] [stdout] | [INFO] [stdout] 266 | / assert_eq!( [INFO] [stdout] 267 | | res, [INFO] [stdout] 268 | | Err(ExecutionError::Exception(JsValue::String( [INFO] [stdout] 269 | | "Failed...".into() [INFO] [stdout] 270 | | ))) [INFO] [stdout] 271 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | |_____| [INFO] [stdout] | |_____Result [INFO] [stdout] | Result [INFO] [stdout] | [INFO] [stdout] note: the following types would have to `impl` their required traits for this operation to be valid [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | pub enum ExecutionError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] | [INFO] [stdout] ::: src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `ExecutionError` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 + #[derive(PartialEq)] [INFO] [stdout] 63 | pub enum ExecutionError { [INFO] [stdout] | [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:279:18 [INFO] [stdout] | [INFO] [stdout] 279 | assert_eq!(c.eval_as::("no_arguments()").unwrap(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^------------------ argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:302:12 [INFO] [stdout] | [INFO] [stdout] 302 | pub fn eval_as(&self, code: &str, filename: &str) -> Result [INFO] [stdout] | ^^^^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 279 | assert_eq!(c.eval_as::("no_arguments()", /* &str */).unwrap(), true); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:282:18 [INFO] [stdout] | [INFO] [stdout] 282 | assert_eq!(c.eval("cb1(true)").unwrap(), JsValue::Bool(false),); [INFO] [stdout] | ^^^^------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 282 | assert_eq!(c.eval("cb1(true)", /* &str */).unwrap(), JsValue::Bool(false),); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:282:5 [INFO] [stdout] | [INFO] [stdout] 282 | assert_eq!(c.eval("cb1(true)").unwrap(), JsValue::Bool(false),); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:287:11 [INFO] [stdout] | [INFO] [stdout] 287 | c.eval(r#"concat2("abc", "def")"#).unwrap(), [INFO] [stdout] | ^^^^---------------------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 287 | c.eval(r#"concat2("abc", "def")"#, /* &str */).unwrap(), [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:286:5 [INFO] [stdout] | [INFO] [stdout] 286 | / assert_eq!( [INFO] [stdout] 287 | | c.eval(r#"concat2("abc", "def")"#).unwrap(), [INFO] [stdout] 288 | | JsValue::String("abcdef".into()), [INFO] [stdout] 289 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | |_____| [INFO] [stdout] | |_____value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:293:18 [INFO] [stdout] | [INFO] [stdout] 293 | assert_eq!(c.eval("add2(5, 11)").unwrap(), JsValue::Int(16),); [INFO] [stdout] | ^^^^--------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 293 | assert_eq!(c.eval("add2(5, 11)", /* &str */).unwrap(), JsValue::Int(16),); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:293:5 [INFO] [stdout] | [INFO] [stdout] 293 | assert_eq!(c.eval("add2(5, 11)").unwrap(), JsValue::Int(16),); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:297:18 [INFO] [stdout] | [INFO] [stdout] 297 | assert_eq!(c.eval("sum([1, 2, 3, 4, 5, 6])").unwrap(), JsValue::Int(21),); [INFO] [stdout] | ^^^^--------------------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 297 | assert_eq!(c.eval("sum([1, 2, 3, 4, 5, 6])", /* &str */).unwrap(), JsValue::Int(21),); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:297:5 [INFO] [stdout] | [INFO] [stdout] 297 | assert_eq!(c.eval("sum([1, 2, 3, 4, 5, 6])").unwrap(), JsValue::Int(21),); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:303:22 [INFO] [stdout] | [INFO] [stdout] 303 | assert_eq!(c.eval("identity(22)").unwrap(), v); [INFO] [stdout] | ^^^^---------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 303 | assert_eq!(c.eval("identity(22)", /* &str */).unwrap(), v); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:303:9 [INFO] [stdout] | [INFO] [stdout] 303 | assert_eq!(c.eval("identity(22)").unwrap(), v); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:325:31 [INFO] [stdout] | [INFO] [stdout] 325 | let v = c.eval(&code).unwrap(); [INFO] [stdout] | ^^^^------- argument #2 of type `&str` is missing [INFO] [stdout] ... [INFO] [stdout] 352 | / callback_argn_tests![ [INFO] [stdout] 353 | | 1: (a : 1), [INFO] [stdout] 354 | | ] [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] = note: this error originates in the macro `callback_argn_tests` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 325 | let v = c.eval(&code, /* &str */).unwrap(); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:352:5 [INFO] [stdout] | [INFO] [stdout] 352 | / callback_argn_tests![ [INFO] [stdout] 353 | | 1: (a : 1), [INFO] [stdout] 354 | | ] [INFO] [stdout] | | ^ [INFO] [stdout] | |_____| [INFO] [stdout] | |_____value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` which comes from the expansion of the macro `callback_argn_tests` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:335:31 [INFO] [stdout] | [INFO] [stdout] 335 | let v = c.eval(&code).unwrap(); [INFO] [stdout] | ^^^^------- argument #2 of type `&str` is missing [INFO] [stdout] ... [INFO] [stdout] 352 | / callback_argn_tests![ [INFO] [stdout] 353 | | 1: (a : 1), [INFO] [stdout] 354 | | ] [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] = note: this error originates in the macro `callback_argn_tests` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 335 | let v = c.eval(&code, /* &str */).unwrap(); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:352:5 [INFO] [stdout] | [INFO] [stdout] 352 | / callback_argn_tests![ [INFO] [stdout] 353 | | 1: (a : 1), [INFO] [stdout] 354 | | ] [INFO] [stdout] | | ^ [INFO] [stdout] | |_____| [INFO] [stdout] | |_____value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` which comes from the expansion of the macro `callback_argn_tests` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:345:33 [INFO] [stdout] | [INFO] [stdout] 345 | let res = c.eval(&code); [INFO] [stdout] | ^^^^------- argument #2 of type `&str` is missing [INFO] [stdout] ... [INFO] [stdout] 352 | / callback_argn_tests![ [INFO] [stdout] 353 | | 1: (a : 1), [INFO] [stdout] 354 | | ] [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] = note: this error originates in the macro `callback_argn_tests` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 345 | let res = c.eval(&code, /* &str */); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result` [INFO] [stdout] --> src/tests.rs:352:5 [INFO] [stdout] | [INFO] [stdout] 352 | / callback_argn_tests![ [INFO] [stdout] 353 | | 1: (a : 1), [INFO] [stdout] 354 | | ] [INFO] [stdout] | | ^ [INFO] [stdout] | |_____| [INFO] [stdout] | |_____Result [INFO] [stdout] | Result [INFO] [stdout] | [INFO] [stdout] note: the following types would have to `impl` their required traits for this operation to be valid [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | pub enum ExecutionError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] | [INFO] [stdout] ::: src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` which comes from the expansion of the macro `callback_argn_tests` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `ExecutionError` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 + #[derive(PartialEq)] [INFO] [stdout] 63 | pub enum ExecutionError { [INFO] [stdout] | [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Vec` [INFO] [stdout] --> src/tests.rs:364:9 [INFO] [stdout] | [INFO] [stdout] 364 | / assert_eq!( [INFO] [stdout] 365 | | args, [INFO] [stdout] 366 | | vec![ [INFO] [stdout] 367 | | JsValue::String("hello".into()), [INFO] [stdout] ... | [INFO] [stdout] 371 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | |_________| [INFO] [stdout] | |_________Vec [INFO] [stdout] | Vec [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:375:11 [INFO] [stdout] | [INFO] [stdout] 375 | c.eval_as::("cb('hello', true, 100) === undefined") [INFO] [stdout] | ^^^^^^^^^^^^^^^---------------------------------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:302:12 [INFO] [stdout] | [INFO] [stdout] 302 | pub fn eval_as(&self, code: &str, filename: &str) -> Result [INFO] [stdout] | ^^^^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 375 | c.eval_as::("cb('hello', true, 100) === undefined", /* &str */) [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Vec` [INFO] [stdout] --> src/tests.rs:383:9 [INFO] [stdout] | [INFO] [stdout] 383 | / assert_eq!( [INFO] [stdout] 384 | | args, [INFO] [stdout] 385 | | vec![JsValue::from(1), JsValue::from(10), JsValue::from(100),] [INFO] [stdout] 386 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | |_________| [INFO] [stdout] | |_________Vec [INFO] [stdout] | Vec [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:390:7 [INFO] [stdout] | [INFO] [stdout] 390 | c.eval( [INFO] [stdout] | _______^^^^- [INFO] [stdout] 391 | | r#" [INFO] [stdout] 392 | | var x = cb2(1, 10, 100); [INFO] [stdout] 393 | | if (x !== 111) { [INFO] [stdout] ... | [INFO] [stdout] 396 | | "#, [INFO] [stdout] 397 | | ) [INFO] [stdout] | |_____- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 390 ~ c.eval(r#" [INFO] [stdout] 391 + var x = cb2(1, 10, 100); [INFO] [stdout] 392 + if (x !== 111) { [INFO] [stdout] 393 + throw new Error('Expected 111, got ' + x); [INFO] [stdout] 394 + } [INFO] [stdout] 395 + "#, /* &str */) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:408:11 [INFO] [stdout] | [INFO] [stdout] 408 | c.eval(" cb(5) "), [INFO] [stdout] | ^^^^----------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 408 | c.eval(" cb(5) ", /* &str */), [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result` [INFO] [stdout] --> src/tests.rs:407:5 [INFO] [stdout] | [INFO] [stdout] 407 | / assert_eq!( [INFO] [stdout] 408 | | c.eval(" cb(5) "), [INFO] [stdout] 409 | | Err(ExecutionError::Exception( [INFO] [stdout] 410 | | "Invalid argument count: Expected 2, got 1".into() [INFO] [stdout] 411 | | )), [INFO] [stdout] 412 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | |_____| [INFO] [stdout] | |_____Result [INFO] [stdout] | Result [INFO] [stdout] | [INFO] [stdout] note: the following types would have to `impl` their required traits for this operation to be valid [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | pub enum ExecutionError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] | [INFO] [stdout] ::: src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `ExecutionError` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 + #[derive(PartialEq)] [INFO] [stdout] 63 | pub enum ExecutionError { [INFO] [stdout] | [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:419:11 [INFO] [stdout] | [INFO] [stdout] 419 | c.eval(" 'abc'.repeat(200_000) "), [INFO] [stdout] | ^^^^---------------------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 419 | c.eval(" 'abc'.repeat(200_000) ", /* &str */), [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result` [INFO] [stdout] --> src/tests.rs:418:5 [INFO] [stdout] | [INFO] [stdout] 418 | / assert_eq!( [INFO] [stdout] 419 | | c.eval(" 'abc'.repeat(200_000) "), [INFO] [stdout] 420 | | Err(ExecutionError::OutOfMemory), [INFO] [stdout] 421 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | |_____| [INFO] [stdout] | |_____Result [INFO] [stdout] | Result [INFO] [stdout] | [INFO] [stdout] note: the following types would have to `impl` their required traits for this operation to be valid [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | pub enum ExecutionError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] | [INFO] [stdout] ::: src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `ExecutionError` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/lib.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 + #[derive(PartialEq)] [INFO] [stdout] 63 | pub enum ExecutionError { [INFO] [stdout] | [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:427:7 [INFO] [stdout] | [INFO] [stdout] 427 | c.eval(" var x = 123; ").unwrap(); [INFO] [stdout] | ^^^^------------------ argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 427 | c.eval(" var x = 123; ", /* &str */).unwrap(); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:434:12 [INFO] [stdout] | [INFO] [stdout] 434 | c2.eval_as::(" 'abc'.repeat(2) ").unwrap(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^--------------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:302:12 [INFO] [stdout] | [INFO] [stdout] 302 | pub fn eval_as(&self, code: &str, filename: &str) -> Result [INFO] [stdout] | ^^^^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 434 | c2.eval_as::(" 'abc'.repeat(2) ", /* &str */).unwrap(), [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:439:22 [INFO] [stdout] | [INFO] [stdout] 439 | let err_msg = c2.eval(" x ").unwrap_err().to_string(); [INFO] [stdout] | ^^^^------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 439 | let err_msg = c2.eval(" x ", /* &str */).unwrap_err().to_string(); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:443:22 [INFO] [stdout] | [INFO] [stdout] 443 | let err_msg = c2.eval(" myCallback() ").unwrap_err().to_string(); [INFO] [stdout] | ^^^^------------------ argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 443 | let err_msg = c2.eval(" myCallback() ", /* &str */).unwrap_err().to_string(); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:454:9 [INFO] [stdout] | [INFO] [stdout] 454 | ctx.eval(&code).unwrap(); [INFO] [stdout] | ^^^^------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 454 | ctx.eval(&code, /* &str */).unwrap(); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:463:5 [INFO] [stdout] | [INFO] [stdout] 463 | assert_eq!(v, "testtest".into()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | value::JsValue [INFO] [stdout] | _ [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq<_>` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq<_>` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:465:15 [INFO] [stdout] | [INFO] [stdout] 465 | let v = c.eval(" f('la') ").unwrap(); [INFO] [stdout] | ^^^^------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 465 | let v = c.eval(" f('la') ", /* &str */).unwrap(); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:466:5 [INFO] [stdout] | [INFO] [stdout] 466 | assert_eq!(v, "lala".into()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | value::JsValue [INFO] [stdout] | _ [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq<_>` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq<_>` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:474:7 [INFO] [stdout] | [INFO] [stdout] 474 | c.eval( [INFO] [stdout] | _______^^^^- [INFO] [stdout] 475 | | " [INFO] [stdout] 476 | | function dateToTimestamp(date) { [INFO] [stdout] 477 | | return date.getTime(); [INFO] [stdout] 478 | | } [INFO] [stdout] 479 | | ", [INFO] [stdout] 480 | | ) [INFO] [stdout] | |_____- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 474 ~ c.eval(" [INFO] [stdout] 475 + function dateToTimestamp(date) { [INFO] [stdout] 476 + return date.getTime(); [INFO] [stdout] 477 + } [INFO] [stdout] 478 + ", /* &str */) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:490:5 [INFO] [stdout] | [INFO] [stdout] 490 | assert_eq!(timestamp, JsValue::Float(now_millis as f64)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:500:19 [INFO] [stdout] | [INFO] [stdout] 500 | let value = c.eval(" new Date(1234567555) ").unwrap(); [INFO] [stdout] | ^^^^-------------------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 500 | let value = c.eval(" new Date(1234567555) ", /* &str */).unwrap(); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/tests.rs:501:32 [INFO] [stdout] | [INFO] [stdout] 501 | let datetime = chrono::Utc.timestamp_millis(1234567555); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `value::JsValue` [INFO] [stdout] --> src/tests.rs:503:5 [INFO] [stdout] | [INFO] [stdout] 503 | assert_eq!(value, JsValue::Date(datetime)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | value::JsValue [INFO] [stdout] | value::JsValue [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:511:7 [INFO] [stdout] | [INFO] [stdout] 511 | c.eval(" function identity(x) { return x; } ").unwrap(); [INFO] [stdout] | ^^^^---------------------------------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 511 | c.eval(" function identity(x) { return x; } ", /* &str */).unwrap(); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:600:7 [INFO] [stdout] | [INFO] [stdout] 600 | c.eval( [INFO] [stdout] | _______^^^^- [INFO] [stdout] 601 | | r#" [INFO] [stdout] 602 | | console.log("hi"); [INFO] [stdout] 603 | | console.error(false); [INFO] [stdout] 604 | | "#, [INFO] [stdout] 605 | | ) [INFO] [stdout] | |_____- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 600 ~ c.eval(r#" [INFO] [stdout] 601 + console.log("hi"); [INFO] [stdout] 602 + console.error(false); [INFO] [stdout] 603 + "#, /* &str */) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Vec<(Level, Vec)>` [INFO] [stdout] --> src/tests.rs:610:5 [INFO] [stdout] | [INFO] [stdout] 610 | / assert_eq!( [INFO] [stdout] 611 | | *m, [INFO] [stdout] 612 | | vec![ [INFO] [stdout] 613 | | (Level::Log, vec![JsValue::from("hi")]), [INFO] [stdout] ... | [INFO] [stdout] 616 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | |_____| [INFO] [stdout] | |_____Vec<(Level, Vec)> [INFO] [stdout] | Vec<(Level, Vec)> [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `value::JsValue` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum JsValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ must implement `PartialEq` [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `value::JsValue` with `#[derive(PartialEq)]` [INFO] [stdout] --> src/value/mod.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 + #[derive(PartialEq)] [INFO] [stdout] 97 | pub enum JsValue { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tests.rs:623:9 [INFO] [stdout] | [INFO] [stdout] 623 | ctx.eval("a + 1").unwrap(); [INFO] [stdout] | ^^^^--------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/lib.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn eval(&self, code: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^ -------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 623 | ctx.eval("a + 1", /* &str */).unwrap(); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `quick_js` [INFO] [stdout] --> examples/resource.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use quick_js::console::{ConsoleBackend, Level}; [INFO] [stdout] | ^^^^^^^^ use of unresolved module or unlinked crate `quick_js` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `quick_js`, use `cargo add quick_js` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `quick_js` [INFO] [stdout] --> examples/resource.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use quick_js::{Context, JsValue, ResourceValue}; [INFO] [stdout] | ^^^^^^^^ use of unresolved module or unlinked crate `quick_js` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `quick_js`, use `cargo add quick_js` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/bindings/convert.rs:188:13 [INFO] [stdout] | [INFO] [stdout] 188 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/bindings/convert.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0432, E0433. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0432`. [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rt` [INFO] [stdout] --> src/bindings/convert.rs:295:33 [INFO] [stdout] | [INFO] [stdout] 295 | extern fn finalizer(rt: *mut JSRuntime, val: JSValue) { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_rt` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `lento-quick-js` (example "resource") due to 2 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/bindings/mod.rs:409:9 [INFO] [stdout] | [INFO] [stdout] 409 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/bindings/mod.rs:422:9 [INFO] [stdout] | [INFO] [stdout] 422 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/bindings/mod.rs:554:13 [INFO] [stdout] | [INFO] [stdout] 554 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/value/mod.rs:65:21 [INFO] [stdout] | [INFO] [stdout] 64 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] 65 | let v = unsafe { Box::from_raw(self.js_value) }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> src/loader.rs:23:13 [INFO] [stdout] | [INFO] [stdout] 23 | Err(err) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/loader.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | let mut loader = &mut *(opaque as *mut _ as *mut Box); [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] Some errors have detailed explanations: E0061, E0277, E0369, E0412. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stderr] error: could not compile `lento-quick-js` (lib test) due to 76 previous errors; 15 warnings emitted [INFO] running `Command { std: "docker" "inspect" "639f25816c450b7a1863513425e4b1bcd720ebf3558e63f2f7772f042a3f776e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "639f25816c450b7a1863513425e4b1bcd720ebf3558e63f2f7772f042a3f776e", kill_on_drop: false }` [INFO] [stdout] 639f25816c450b7a1863513425e4b1bcd720ebf3558e63f2f7772f042a3f776e