[INFO] fetching crate momento-functions-host 0.3.0... [INFO] testing momento-functions-host-0.3.0 against try#b83b707f97d809763b7861afa7638871f3339a33 for pr-145838-1 [INFO] extracting crate momento-functions-host 0.3.0 into /workspace/builds/worker-3-tc2/source [INFO] started tweaking crates.io crate momento-functions-host 0.3.0 [INFO] finished tweaking crates.io crate momento-functions-host 0.3.0 [INFO] tweaked toml for crates.io crate momento-functions-host 0.3.0 written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate momento-functions-host 0.3.0 on toolchain b83b707f97d809763b7861afa7638871f3339a33 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate momento-functions-host 0.3.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" "+b83b707f97d809763b7861afa7638871f3339a33" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 35ec9ab4f544de819c26bb3f048d889cc3a74cd9f5ddcf444ace7aa012747951 [INFO] running `Command { std: "docker" "start" "-a" "35ec9ab4f544de819c26bb3f048d889cc3a74cd9f5ddcf444ace7aa012747951", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "35ec9ab4f544de819c26bb3f048d889cc3a74cd9f5ddcf444ace7aa012747951", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "35ec9ab4f544de819c26bb3f048d889cc3a74cd9f5ddcf444ace7aa012747951", kill_on_drop: false }` [INFO] [stdout] 35ec9ab4f544de819c26bb3f048d889cc3a74cd9f5ddcf444ace7aa012747951 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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" "+b83b707f97d809763b7861afa7638871f3339a33" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f8991c4a90d4770b91dd0f42f8604e029a24f59497a328e85602251588c58a67 [INFO] running `Command { std: "docker" "start" "-a" "f8991c4a90d4770b91dd0f42f8604e029a24f59497a328e85602251588c58a67", kill_on_drop: false }` [INFO] [stderr] Compiling stable_deref_trait v1.2.0 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling icu_locid_transform_data v1.5.1 [INFO] [stderr] Compiling litemap v0.7.5 [INFO] [stderr] Compiling writeable v0.5.5 [INFO] [stderr] Compiling semver v1.0.26 [INFO] [stderr] Compiling icu_properties_data v1.5.1 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling icu_normalizer_data v1.5.1 [INFO] [stderr] Compiling smallvec v1.15.0 [INFO] [stderr] Compiling wasmparser v0.227.1 [INFO] [stderr] Compiling bitflags v2.9.0 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling utf8_iter v1.0.4 [INFO] [stderr] Compiling write16 v1.0.0 [INFO] [stderr] Compiling utf16_iter v1.0.5 [INFO] [stderr] Compiling anyhow v1.0.98 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling prettyplease v0.2.32 [INFO] [stderr] Compiling percent-encoding v2.3.1 [INFO] [stderr] Compiling hashbrown v0.15.2 [INFO] [stderr] Compiling syn v2.0.100 [INFO] [stderr] Compiling wasm-encoder v0.227.1 [INFO] [stderr] Compiling adler2 v2.0.0 [INFO] [stderr] Compiling crc32fast v1.4.2 [INFO] [stderr] Compiling futures-sink v0.3.31 [INFO] [stderr] Compiling miniz_oxide v0.8.8 [INFO] [stderr] Compiling unicode-xid v0.2.6 [INFO] [stderr] Compiling leb128fmt v0.1.0 [INFO] [stderr] Compiling topological-sort v0.2.2 [INFO] [stderr] Compiling id-arena v2.2.1 [INFO] [stderr] Compiling form_urlencoded v1.2.1 [INFO] [stderr] Compiling futures-core v0.3.31 [INFO] [stderr] Compiling spdx v0.10.8 [INFO] [stderr] Compiling futures-io v0.3.31 [INFO] [stderr] Compiling wit-bindgen-rust v0.41.0 [INFO] [stderr] Compiling wit-bindgen-rust-macro v0.41.0 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling wit-bindgen-rt v0.41.0 [INFO] [stderr] Compiling flate2 v1.1.1 [INFO] [stderr] Compiling synstructure v0.13.1 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling zerovec-derive v0.10.3 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling icu_provider_macros v1.5.0 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling thiserror-impl v2.0.12 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.7.5 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling thiserror v2.0.12 [INFO] [stderr] Compiling yoke v0.7.5 [INFO] [stderr] Compiling zerovec v0.10.4 [INFO] [stderr] Compiling tinystr v0.7.6 [INFO] [stderr] Compiling icu_collections v1.5.0 [INFO] [stderr] Compiling icu_locid v1.5.0 [INFO] [stderr] Compiling icu_provider v1.5.0 [INFO] [stderr] Compiling icu_locid_transform v1.5.0 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling icu_properties v1.5.1 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling indexmap v2.9.0 [INFO] [stderr] Compiling icu_normalizer v1.5.0 [INFO] [stderr] Compiling auditable-serde v0.8.0 [INFO] [stderr] Compiling idna_adapter v1.2.0 [INFO] [stderr] Compiling idna v1.0.3 [INFO] [stderr] Compiling url v2.5.4 [INFO] [stderr] Compiling wit-parser v0.227.1 [INFO] [stderr] Compiling wasm-metadata v0.227.1 [INFO] [stderr] Compiling wit-component v0.227.1 [INFO] [stderr] Compiling wit-bindgen-core v0.41.0 [INFO] [stderr] Compiling wit-bindgen v0.41.0 [INFO] [stderr] Compiling momento-functions-wit v0.3.0 [INFO] [stderr] Compiling momento-functions-host v0.3.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/topics.rs:90:19 [INFO] [stdout] | [INFO] [stdout] 90 | fn as_publish(&self) -> Result, ::Error>; [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 90 | fn as_publish(&self) -> Result, ::Error>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/topics.rs:95:19 [INFO] [stdout] | [INFO] [stdout] 95 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 95 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/topics.rs:116:19 [INFO] [stdout] | [INFO] [stdout] 116 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 116 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/topics.rs:123:19 [INFO] [stdout] | [INFO] [stdout] 123 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 123 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 09s [INFO] running `Command { std: "docker" "inspect" "f8991c4a90d4770b91dd0f42f8604e029a24f59497a328e85602251588c58a67", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f8991c4a90d4770b91dd0f42f8604e029a24f59497a328e85602251588c58a67", kill_on_drop: false }` [INFO] [stdout] f8991c4a90d4770b91dd0f42f8604e029a24f59497a328e85602251588c58a67 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 335e77ddb81d42d0041161c3f3e26ff1a0ebf3440c8fcaa98391b6281734456e [INFO] running `Command { std: "docker" "start" "-a" "335e77ddb81d42d0041161c3f3e26ff1a0ebf3440c8fcaa98391b6281734456e", kill_on_drop: false }` [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/topics.rs:90:19 [INFO] [stdout] | [INFO] [stdout] 90 | fn as_publish(&self) -> Result, ::Error>; [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 90 | fn as_publish(&self) -> Result, ::Error>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/topics.rs:95:19 [INFO] [stdout] | [INFO] [stdout] 95 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 95 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/topics.rs:116:19 [INFO] [stdout] | [INFO] [stdout] 116 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 116 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/topics.rs:123:19 [INFO] [stdout] | [INFO] [stdout] 123 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 123 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling momento-functions-host v0.3.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/topics.rs:90:19 [INFO] [stdout] | [INFO] [stdout] 90 | fn as_publish(&self) -> Result, ::Error>; [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 90 | fn as_publish(&self) -> Result, ::Error>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/topics.rs:95:19 [INFO] [stdout] | [INFO] [stdout] 95 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 95 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/topics.rs:116:19 [INFO] [stdout] | [INFO] [stdout] 116 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 116 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/topics.rs:123:19 [INFO] [stdout] | [INFO] [stdout] 123 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 123 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.09s [INFO] running `Command { std: "docker" "inspect" "335e77ddb81d42d0041161c3f3e26ff1a0ebf3440c8fcaa98391b6281734456e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "335e77ddb81d42d0041161c3f3e26ff1a0ebf3440c8fcaa98391b6281734456e", kill_on_drop: false }` [INFO] [stdout] 335e77ddb81d42d0041161c3f3e26ff1a0ebf3440c8fcaa98391b6281734456e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 2434f4ec9c4eaf137ed4a6b25afac139315e5661e1c73f956c987b50e88b06c0 [INFO] running `Command { std: "docker" "start" "-a" "2434f4ec9c4eaf137ed4a6b25afac139315e5661e1c73f956c987b50e88b06c0", kill_on_drop: false }` [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/topics.rs:90:19 [INFO] [stderr] | [INFO] [stderr] 90 | fn as_publish(&self) -> Result, ::Error>; [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 90 | fn as_publish(&self) -> Result, ::Error>; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/topics.rs:95:19 [INFO] [stderr] | [INFO] [stderr] 95 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 95 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/topics.rs:116:19 [INFO] [stderr] | [INFO] [stderr] 116 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 116 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/topics.rs:123:19 [INFO] [stderr] | [INFO] [stderr] 123 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 123 | fn as_publish(&self) -> Result, ::Error> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: `momento-functions-host` (lib) generated 4 warnings (run `cargo fix --lib -p momento-functions-host` to apply 4 suggestions) [INFO] [stderr] warning: `momento-functions-host` (lib test) generated 4 warnings (4 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.10s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/momento_functions_host-1bbca50f6de11dec) [INFO] [stdout] running 0 tests [INFO] [stderr] Doc-tests momento_functions_host [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 32 tests [INFO] [stdout] test src/aws/lambda.rs - aws::lambda::LambdaClient::invoke (line 98) ... FAILED [INFO] [stdout] test src/cache.rs - cache::get (line 40) ... FAILED [INFO] [stdout] test src/cache.rs - cache::set (line 78) ... FAILED [INFO] [stdout] test src/aws/lambda.rs - aws::lambda::LambdaClient::invoke (line 66) ... FAILED [INFO] [stdout] test src/aws/auth.rs - aws::auth::AwsCredentialsProvider::new (line 77) - compile ... ok [INFO] [stdout] test src/aws/ddb.rs - aws::ddb::Item (line 375) ... FAILED [INFO] [stdout] test src/aws/ddb.rs - aws::ddb::DynamoDBClient::put_item (line 193) ... ok [INFO] [stdout] test src/cache.rs - cache::get (line 50) ... FAILED [INFO] [stdout] test src/aws/ddb.rs - aws::ddb::DynamoDBClient::get_item (line 84) ... FAILED [INFO] [stdout] test src/aws/ddb.rs - aws::ddb::DynamoDBClient::get_item_raw (line 127) ... ok [INFO] [stdout] test src/http.rs - http::Response::extract (line 27) ... FAILED [INFO] [stdout] test src/aws/auth.rs - aws::auth::build_environment_aws_credentials (line 25) ... ok [INFO] [stdout] test src/aws/ddb.rs - aws::ddb::DynamoDBClient::put_item (line 178) ... ok [INFO] [stdout] test src/http.rs - http::get (line 66) ... ok [INFO] [stdout] test src/redis.rs - redis::RedisClient::pipe (line 197) ... FAILED [INFO] [stdout] test src/cache.rs - cache::set (line 93) ... FAILED [INFO] [stdout] test src/http.rs - http::post (line 180) ... FAILED [INFO] [stdout] test src/http.rs - http::post_aws_sigv4 (line 404) ... FAILED [INFO] [stdout] test src/aws/auth.rs - aws::auth::build_environment_aws_credentials (line 31) ... ok [INFO] [stdout] test src/aws/ddb.rs - aws::ddb::DynamoDBClient::new (line 58) ... ok [INFO] [stdout] test src/aws/lambda.rs - aws::lambda::LambdaClient::new (line 38) ... ok [INFO] [stdout] test src/http.rs - http::put (line 116) ... FAILED [INFO] [stdout] test src/http.rs - http::put_aws_sigv4 (line 351) ... FAILED [INFO] [stdout] test src/spawn.rs - spawn::spawn (line 21) ... FAILED [INFO] [stdout] test src/topics.rs - topics::publish (line 49) ... FAILED [INFO] [stdout] test src/topics.rs - topics::publish (line 27) ... FAILED [INFO] [stdout] test src/topics.rs - topics::publish (line 38) ... FAILED [INFO] [stdout] test src/http.rs - http::delete_aws_sigv4 (line 457) ... ok [INFO] [stdout] test src/redis.rs - redis::RedisClient::new (line 102) ... ok [INFO] [stdout] test src/aws/ddb.rs - aws::ddb::Item (line 368) ... ok [INFO] [stdout] test src/http.rs - http::get_aws_sigv4 (line 302) ... ok [INFO] [stdout] test src/http.rs - http::delete (line 245) ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- src/aws/lambda.rs - aws::lambda::LambdaClient::invoke (line 98) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/aws/lambda.rs:112:43 [INFO] [stdout] | [INFO] [stdout] 17 | fn f(client: &LambdaClient) -> Result<(), InvokeError>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `InvokeError` [INFO] [stdout] --> /opt/rustwide/workdir/src/aws/lambda.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum InvokeError [INFO] [stdout] | ----------- required by a bound in this enum [INFO] [stdout] 21 | where [INFO] [stdout] 22 | E: EncodeError, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `InvokeError>` [INFO] [stdout] --> src/aws/lambda.rs:117:2 [INFO] [stdout] | [INFO] [stdout] 17 | fn f(client: &LambdaClient) -> Result<(), InvokeError>> { [INFO] [stdout] | --------------------------------------- expected `InvokeError>` because of this [INFO] [stdout] 18 | // Just a request payload, encoded as JSON [INFO] [stdout] 19 | client.invoke( [INFO] [stdout] | ________- [INFO] [stdout] 20 | | "my_lambda_function", [INFO] [stdout] 21 | | Json(MyStruct { hello: "hello".to_string() }), [INFO] [stdout] 22 | | )?; [INFO] [stdout] | | -^ the trait `From>` is not implemented for `InvokeError>` [INFO] [stdout] | |_| [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, InvokeError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/aws/lambda.rs:114:1 [INFO] [stdout] | [INFO] [stdout] 19 | / client.invoke( [INFO] [stdout] 20 | | "my_lambda_function", [INFO] [stdout] 21 | | Json(MyStruct { hello: "hello".to_string() }), [INFO] [stdout] 22 | | )?; [INFO] [stdout] | |__^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `InvokeError` [INFO] [stdout] --> /opt/rustwide/workdir/src/aws/lambda.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum InvokeError [INFO] [stdout] | ----------- required by a bound in this enum [INFO] [stdout] 21 | where [INFO] [stdout] 22 | E: EncodeError, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `InvokeError>` [INFO] [stdout] --> src/aws/lambda.rs:123:2 [INFO] [stdout] | [INFO] [stdout] 17 | fn f(client: &LambdaClient) -> Result<(), InvokeError>> { [INFO] [stdout] | --------------------------------------- expected `InvokeError>` because of this [INFO] [stdout] ... [INFO] [stdout] 25 | let Json(reply): Json = client.invoke( [INFO] [stdout] | _______________________________________- [INFO] [stdout] 26 | | "my_lambda_function", [INFO] [stdout] 27 | | Json(MyStruct { hello: "hello".to_string() }), [INFO] [stdout] 28 | | )? [INFO] [stdout] | | -^ the trait `From>` is not implemented for `InvokeError>` [INFO] [stdout] | |_| [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, InvokeError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/aws/lambda.rs:120:32 [INFO] [stdout] | [INFO] [stdout] 25 | let Json(reply): Json = client.invoke( [INFO] [stdout] | ________________________________^ [INFO] [stdout] 26 | | "my_lambda_function", [INFO] [stdout] 27 | | Json(MyStruct { hello: "hello".to_string() }), [INFO] [stdout] 28 | | )? [INFO] [stdout] | |__^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `InvokeError` [INFO] [stdout] --> /opt/rustwide/workdir/src/aws/lambda.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum InvokeError [INFO] [stdout] | ----------- required by a bound in this enum [INFO] [stdout] 21 | where [INFO] [stdout] 22 | E: EncodeError, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `InvokeError>` [INFO] [stdout] --> src/aws/lambda.rs:124:11 [INFO] [stdout] | [INFO] [stdout] 17 | fn f(client: &LambdaClient) -> Result<(), InvokeError>> { [INFO] [stdout] | --------------------------------------- expected `InvokeError>` because of this [INFO] [stdout] ... [INFO] [stdout] 29 | .extract()?; [INFO] [stdout] | ---------^ the trait `From>` is not implemented for `InvokeError>` [INFO] [stdout] | | [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, ResponseExtractError<_>>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/aws/lambda.rs:120:32 [INFO] [stdout] | [INFO] [stdout] 25 | let Json(reply): Json = client.invoke( [INFO] [stdout] | ________________________________^ [INFO] [stdout] 26 | | "my_lambda_function", [INFO] [stdout] 27 | | Json(MyStruct { hello: "hello".to_string() }), [INFO] [stdout] 28 | | )? [INFO] [stdout] 29 | | .extract()?; [INFO] [stdout] | |___________^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `InvokeError` [INFO] [stdout] --> /opt/rustwide/workdir/src/aws/lambda.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum InvokeError [INFO] [stdout] | ----------- required by a bound in this enum [INFO] [stdout] 21 | where [INFO] [stdout] 22 | E: EncodeError, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/aws/lambda.rs:127:1 [INFO] [stdout] | [INFO] [stdout] 32 | Ok(())} [INFO] [stdout] | ^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `InvokeError` [INFO] [stdout] --> /opt/rustwide/workdir/src/aws/lambda.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum InvokeError [INFO] [stdout] | ----------- required by a bound in this enum [INFO] [stdout] 21 | where [INFO] [stdout] 22 | E: EncodeError, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `InvokeError` [INFO] [stdout] [INFO] [stdout] error: aborting due to 8 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/cache.rs - cache::get (line 40) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `Vec: ExtractError` is not satisfied [INFO] [stdout] --> src/cache.rs:45:22 [INFO] [stdout] | [INFO] [stdout] 8 | fn f() -> Result<(), CacheGetError>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ the trait `ExtractError` is not implemented for `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ExtractError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheGetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:24:27 [INFO] [stdout] | [INFO] [stdout] 24 | pub enum CacheGetError { [INFO] [stdout] | ^^^^^^^^^^^^ required by this bound in `CacheGetError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vec: ExtractError` is not satisfied [INFO] [stdout] --> src/cache.rs:46:30 [INFO] [stdout] | [INFO] [stdout] 9 | let value: Option> = cache::get("my_key")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ the trait `ExtractError` is not implemented for `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ExtractError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheGetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:24:27 [INFO] [stdout] | [INFO] [stdout] 24 | pub enum CacheGetError { [INFO] [stdout] | ^^^^^^^^^^^^ required by this bound in `CacheGetError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vec: ExtractError` is not satisfied [INFO] [stdout] --> src/cache.rs:46:30 [INFO] [stdout] | [INFO] [stdout] 9 | let value: Option> = cache::get("my_key")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ the trait `ExtractError` is not implemented for `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ExtractError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheGetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:24:27 [INFO] [stdout] | [INFO] [stdout] 24 | pub enum CacheGetError { [INFO] [stdout] | ^^^^^^^^^^^^ required by this bound in `CacheGetError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vec: ExtractError` is not satisfied [INFO] [stdout] --> src/cache.rs:46:50 [INFO] [stdout] | [INFO] [stdout] 9 | let value: Option> = cache::get("my_key")?; [INFO] [stdout] | ^ the trait `ExtractError` is not implemented for `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ExtractError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheGetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:24:27 [INFO] [stdout] | [INFO] [stdout] 24 | pub enum CacheGetError { [INFO] [stdout] | ^^^^^^^^^^^^ required by this bound in `CacheGetError` [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving ` as Extract>::Error == Vec` [INFO] [stdout] --> src/cache.rs:46:30 [INFO] [stdout] | [INFO] [stdout] 9 | let value: Option> = cache::get("my_key")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ expected `Vec`, found `Infallible` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Vec` [INFO] [stdout] found enum `Infallible` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Vec: ExtractError` is not satisfied [INFO] [stdout] --> src/cache.rs:47:1 [INFO] [stdout] | [INFO] [stdout] 10 | Ok(()) } [INFO] [stdout] | ^^ the trait `ExtractError` is not implemented for `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ExtractError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheGetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:24:27 [INFO] [stdout] | [INFO] [stdout] 24 | pub enum CacheGetError { [INFO] [stdout] | ^^^^^^^^^^^^ required by this bound in `CacheGetError` [INFO] [stdout] [INFO] [stdout] error: aborting due to 6 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0271, E0277. [INFO] [stdout] For more information about an error, try `rustc --explain E0271`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/cache.rs - cache::set (line 78) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `&'static str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/cache.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 9 | fn f() -> Result<(), CacheSetError<&'static str>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&'static str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheSetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:10:27 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum CacheSetError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `CacheSetError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `CacheSetError<&str>` [INFO] [stdout] --> src/cache.rs:89:2 [INFO] [stdout] | [INFO] [stdout] 9 | fn f() -> Result<(), CacheSetError<&'static str>> { [INFO] [stdout] | --------------------------------------- expected `CacheSetError<&str>` because of this [INFO] [stdout] 10 | / cache::set( [INFO] [stdout] 11 | | "my_key", [INFO] [stdout] 12 | | b"hello".to_vec(), [INFO] [stdout] 13 | | Duration::from_secs(60), [INFO] [stdout] 14 | | )?; [INFO] [stdout] | | -^ the trait `From>` is not implemented for `CacheSetError<&str>` [INFO] [stdout] | |_| [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, CacheSetError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `CacheSetError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/cache.rs:85:1 [INFO] [stdout] | [INFO] [stdout] 10 | / cache::set( [INFO] [stdout] 11 | | "my_key", [INFO] [stdout] 12 | | b"hello".to_vec(), [INFO] [stdout] 13 | | Duration::from_secs(60), [INFO] [stdout] 14 | | )?; [INFO] [stdout] | |__^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheSetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:10:27 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum CacheSetError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `CacheSetError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/cache.rs:90:1 [INFO] [stdout] | [INFO] [stdout] 15 | Ok(()) } [INFO] [stdout] | ^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheSetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:10:27 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum CacheSetError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `CacheSetError` [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/aws/lambda.rs - aws::lambda::LambdaClient::invoke (line 66) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/aws/lambda.rs:71:43 [INFO] [stdout] | [INFO] [stdout] 8 | fn f(client: &LambdaClient) -> Result<(), InvokeError<&str>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `InvokeError` [INFO] [stdout] --> /opt/rustwide/workdir/src/aws/lambda.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum InvokeError [INFO] [stdout] | ----------- required by a bound in this enum [INFO] [stdout] 21 | where [INFO] [stdout] 22 | E: EncodeError, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `InvokeError<&str>` [INFO] [stdout] --> src/aws/lambda.rs:76:2 [INFO] [stdout] | [INFO] [stdout] 8 | fn f(client: &LambdaClient) -> Result<(), InvokeError<&str>> { [INFO] [stdout] | ----------------------------- expected `InvokeError<&str>` because of this [INFO] [stdout] 9 | // With a payload [INFO] [stdout] 10 | client.invoke( [INFO] [stdout] | ________- [INFO] [stdout] 11 | | "my_lambda_function", [INFO] [stdout] 12 | | "hello world", [INFO] [stdout] 13 | | )?; [INFO] [stdout] | | -^ the trait `From>` is not implemented for `InvokeError<&str>` [INFO] [stdout] | |_| [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, InvokeError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/aws/lambda.rs:73:1 [INFO] [stdout] | [INFO] [stdout] 10 | / client.invoke( [INFO] [stdout] 11 | | "my_lambda_function", [INFO] [stdout] 12 | | "hello world", [INFO] [stdout] 13 | | )?; [INFO] [stdout] | |__^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `InvokeError` [INFO] [stdout] --> /opt/rustwide/workdir/src/aws/lambda.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum InvokeError [INFO] [stdout] | ----------- required by a bound in this enum [INFO] [stdout] 21 | where [INFO] [stdout] 22 | E: EncodeError, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `InvokeError<&str>` [INFO] [stdout] --> src/aws/lambda.rs:82:2 [INFO] [stdout] | [INFO] [stdout] 8 | fn f(client: &LambdaClient) -> Result<(), InvokeError<&str>> { [INFO] [stdout] | ----------------------------- expected `InvokeError<&str>` because of this [INFO] [stdout] ... [INFO] [stdout] 16 | client.invoke( [INFO] [stdout] | ________- [INFO] [stdout] 17 | | ("my_lambda_function", "v1"), [INFO] [stdout] 18 | | "hello world", [INFO] [stdout] 19 | | )?; [INFO] [stdout] | | -^ the trait `From>` is not implemented for `InvokeError<&str>` [INFO] [stdout] | |_| [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, InvokeError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/aws/lambda.rs:79:1 [INFO] [stdout] | [INFO] [stdout] 16 | / client.invoke( [INFO] [stdout] 17 | | ("my_lambda_function", "v1"), [INFO] [stdout] 18 | | "hello world", [INFO] [stdout] 19 | | )?; [INFO] [stdout] | |__^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `InvokeError` [INFO] [stdout] --> /opt/rustwide/workdir/src/aws/lambda.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum InvokeError [INFO] [stdout] | ----------- required by a bound in this enum [INFO] [stdout] 21 | where [INFO] [stdout] 22 | E: EncodeError, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `InvokeError<&str>` [INFO] [stdout] --> src/aws/lambda.rs:88:2 [INFO] [stdout] | [INFO] [stdout] 8 | fn f(client: &LambdaClient) -> Result<(), InvokeError<&str>> { [INFO] [stdout] | ----------------------------- expected `InvokeError<&str>` because of this [INFO] [stdout] ... [INFO] [stdout] 22 | client.invoke( [INFO] [stdout] | ________- [INFO] [stdout] 23 | | "my_lambda_function", [INFO] [stdout] 24 | | (), [INFO] [stdout] 25 | | )?; [INFO] [stdout] | | -^ the trait `From>` is not implemented for `InvokeError<&str>` [INFO] [stdout] | |_| [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, InvokeError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/aws/lambda.rs:85:1 [INFO] [stdout] | [INFO] [stdout] 22 | / client.invoke( [INFO] [stdout] 23 | | "my_lambda_function", [INFO] [stdout] 24 | | (), [INFO] [stdout] 25 | | )?; [INFO] [stdout] | |__^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `InvokeError` [INFO] [stdout] --> /opt/rustwide/workdir/src/aws/lambda.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum InvokeError [INFO] [stdout] | ----------- required by a bound in this enum [INFO] [stdout] 21 | where [INFO] [stdout] 22 | E: EncodeError, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `InvokeError<&str>` [INFO] [stdout] --> src/aws/lambda.rs:94:2 [INFO] [stdout] | [INFO] [stdout] 8 | fn f(client: &LambdaClient) -> Result<(), InvokeError<&str>> { [INFO] [stdout] | ----------------------------- expected `InvokeError<&str>` because of this [INFO] [stdout] ... [INFO] [stdout] 28 | client.invoke( [INFO] [stdout] | ________- [INFO] [stdout] 29 | | "my_lambda_function", [INFO] [stdout] 30 | | b"some literal bytes".to_vec(), [INFO] [stdout] 31 | | )?; [INFO] [stdout] | | -^ the trait `From>` is not implemented for `InvokeError<&str>` [INFO] [stdout] | |_| [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, InvokeError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/aws/lambda.rs:91:1 [INFO] [stdout] | [INFO] [stdout] 28 | / client.invoke( [INFO] [stdout] 29 | | "my_lambda_function", [INFO] [stdout] 30 | | b"some literal bytes".to_vec(), [INFO] [stdout] 31 | | )?; [INFO] [stdout] | |__^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `InvokeError` [INFO] [stdout] --> /opt/rustwide/workdir/src/aws/lambda.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum InvokeError [INFO] [stdout] | ----------- required by a bound in this enum [INFO] [stdout] 21 | where [INFO] [stdout] 22 | E: EncodeError, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `InvokeError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/aws/lambda.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 32 | Ok(())} [INFO] [stdout] | ^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `InvokeError` [INFO] [stdout] --> /opt/rustwide/workdir/src/aws/lambda.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum InvokeError [INFO] [stdout] | ----------- required by a bound in this enum [INFO] [stdout] 21 | where [INFO] [stdout] 22 | E: EncodeError, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `InvokeError` [INFO] [stdout] [INFO] [stdout] error: aborting due to 10 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/aws/ddb.rs - aws::ddb::Item (line 375) stdout ---- [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `std::string::String` [INFO] [stdout] --> src/aws/ddb.rs:396:114 [INFO] [stdout] | [INFO] [stdout] 24 | some_attribute: value.attributes.remove("some_attribute").ok_or("missing some_attribute")?.try_into()?, [INFO] [stdout] | ----------^ the trait `From` is not implemented for `std::string::String` [INFO] [stdout] | | [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, ConversionError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the following other types implement trait `From`: [INFO] [stdout] `std::string::String` implements `From<&mut str>` [INFO] [stdout] `std::string::String` implements `From<&std::string::String>` [INFO] [stdout] `std::string::String` implements `From<&str>` [INFO] [stdout] `std::string::String` implements `From>` [INFO] [stdout] `std::string::String` implements `From>` [INFO] [stdout] `std::string::String` implements `From` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/cache.rs - cache::get (line 50) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `Json: ExtractError` is not satisfied [INFO] [stdout] --> src/cache.rs:61:22 [INFO] [stdout] | [INFO] [stdout] 14 | fn f() -> Result<(), CacheGetError>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ExtractError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ExtractError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheGetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:24:27 [INFO] [stdout] | [INFO] [stdout] 24 | pub enum CacheGetError { [INFO] [stdout] | ^^^^^^^^^^^^ required by this bound in `CacheGetError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: ExtractError` is not satisfied [INFO] [stdout] --> src/cache.rs:62:37 [INFO] [stdout] | [INFO] [stdout] 15 | let value: Option> = cache::get("my_key")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ the trait `ExtractError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ExtractError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheGetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:24:27 [INFO] [stdout] | [INFO] [stdout] 24 | pub enum CacheGetError { [INFO] [stdout] | ^^^^^^^^^^^^ required by this bound in `CacheGetError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: ExtractError` is not satisfied [INFO] [stdout] --> src/cache.rs:62:37 [INFO] [stdout] | [INFO] [stdout] 15 | let value: Option> = cache::get("my_key")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ the trait `ExtractError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ExtractError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheGetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:24:27 [INFO] [stdout] | [INFO] [stdout] 24 | pub enum CacheGetError { [INFO] [stdout] | ^^^^^^^^^^^^ required by this bound in `CacheGetError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: ExtractError` is not satisfied [INFO] [stdout] --> src/cache.rs:62:57 [INFO] [stdout] | [INFO] [stdout] 15 | let value: Option> = cache::get("my_key")?; [INFO] [stdout] | ^ the trait `ExtractError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ExtractError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheGetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:24:27 [INFO] [stdout] | [INFO] [stdout] 24 | pub enum CacheGetError { [INFO] [stdout] | ^^^^^^^^^^^^ required by this bound in `CacheGetError` [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving ` as Extract>::Error == Json` [INFO] [stdout] --> src/cache.rs:62:37 [INFO] [stdout] | [INFO] [stdout] 15 | let value: Option> = cache::get("my_key")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ expected `Json`, found `Error` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Json` [INFO] [stdout] found struct `serde_json::error::Error` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: ExtractError` is not satisfied [INFO] [stdout] --> src/cache.rs:63:1 [INFO] [stdout] | [INFO] [stdout] 16 | Ok(()) } [INFO] [stdout] | ^^ the trait `ExtractError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ExtractError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheGetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:24:27 [INFO] [stdout] | [INFO] [stdout] 24 | pub enum CacheGetError { [INFO] [stdout] | ^^^^^^^^^^^^ required by this bound in `CacheGetError` [INFO] [stdout] [INFO] [stdout] error: aborting due to 6 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0271, E0277. [INFO] [stdout] For more information about an error, try `rustc --explain E0271`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/aws/ddb.rs - aws::ddb::DynamoDBClient::get_item (line 84) stdout ---- [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `std::string::String` [INFO] [stdout] --> src/aws/ddb.rs:104:114 [INFO] [stdout] | [INFO] [stdout] 23 | some_attribute: value.attributes.remove("some_attribute").ok_or("missing some_attribute")?.try_into()?, [INFO] [stdout] | ----------^ the trait `From` is not implemented for `std::string::String` [INFO] [stdout] | | [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, ConversionError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the following other types implement trait `From`: [INFO] [stdout] `std::string::String` implements `From<&mut str>` [INFO] [stdout] `std::string::String` implements `From<&std::string::String>` [INFO] [stdout] `std::string::String` implements `From<&str>` [INFO] [stdout] `std::string::String` implements `From>` [INFO] [stdout] `std::string::String` implements `From>` [INFO] [stdout] `std::string::String` implements `From` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/http.rs - http::Response::extract (line 27) stdout ---- [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `serde_json::Error` [INFO] [stdout] --> src/http.rs:48:2 [INFO] [stdout] | [INFO] [stdout] 8 | fn f() -> Result<(), serde_json::error::Error> { [INFO] [stdout] | ------------------------------------ expected `serde_json::Error` because of this [INFO] [stdout] ... [INFO] [stdout] 18 | let Json(reply): Json = http::post( [INFO] [stdout] | ________________________________- [INFO] [stdout] 19 | | "https://gomomento.com", [INFO] [stdout] 20 | | [ [INFO] [stdout] 21 | | ("authorization".to_string(), "abc123".to_string()), [INFO] [stdout] 22 | | ], [INFO] [stdout] 23 | | Json(Request { message: "hello".to_string() }) [INFO] [stdout] 24 | | )? [INFO] [stdout] | | -^ the trait `From>` is not implemented for `serde_json::Error` [INFO] [stdout] | |_| [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, HttpPostError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/redis.rs - redis::RedisClient::pipe (line 197) stdout ---- [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `momento_functions_wit::host::momento::host::redis::RedisError` [INFO] [stdout] --> src/redis.rs:203:49 [INFO] [stdout] | [INFO] [stdout] 7 | fn f(client: &RedisClient) -> Result<(), host::redis::RedisError> { [INFO] [stdout] | ----------------------------------- expected `momento_functions_wit::host::momento::host::redis::RedisError` because of this [INFO] [stdout] 8 | let response_stream = client.pipe(vec![ [INFO] [stdout] 9 | Command::builder().set("my_key", "my_value")?.build(), [INFO] [stdout] | -------------------------^ the trait `From` is not implemented for `momento_functions_wit::host::momento::host::redis::RedisError` [INFO] [stdout] | | [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, Infallible>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/cache.rs - cache::set (line 93) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/cache.rs:105:22 [INFO] [stdout] | [INFO] [stdout] 15 | fn f() -> Result<(), CacheSetError>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheSetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:10:27 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum CacheSetError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `CacheSetError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `CacheSetError>` [INFO] [stdout] --> src/cache.rs:110:2 [INFO] [stdout] | [INFO] [stdout] 15 | fn f() -> Result<(), CacheSetError>> { [INFO] [stdout] | ----------------------------------------- expected `CacheSetError>` because of this [INFO] [stdout] 16 | / cache::set( [INFO] [stdout] 17 | | "my_key", [INFO] [stdout] 18 | | Json(MyStruct { hello: "hello".to_string() }), [INFO] [stdout] 19 | | Duration::from_secs(60), [INFO] [stdout] 20 | | )?; [INFO] [stdout] | | -^ the trait `From>` is not implemented for `CacheSetError>` [INFO] [stdout] | |_| [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, CacheSetError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `CacheSetError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/cache.rs:106:1 [INFO] [stdout] | [INFO] [stdout] 16 | / cache::set( [INFO] [stdout] 17 | | "my_key", [INFO] [stdout] 18 | | Json(MyStruct { hello: "hello".to_string() }), [INFO] [stdout] 19 | | Duration::from_secs(60), [INFO] [stdout] 20 | | )?; [INFO] [stdout] | |__^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheSetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:10:27 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum CacheSetError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `CacheSetError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/cache.rs:111:1 [INFO] [stdout] | [INFO] [stdout] 21 | Ok(()) } [INFO] [stdout] | ^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `CacheSetError` [INFO] [stdout] --> /opt/rustwide/workdir/src/cache.rs:10:27 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum CacheSetError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `CacheSetError` [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/http.rs - http::post (line 180) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `&'static str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:185:11 [INFO] [stdout] | [INFO] [stdout] 8 | fn f() -> Result<(), HttpPostError<&'static str>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&'static str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPostError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:166:27 [INFO] [stdout] | [INFO] [stdout] 166 | pub enum HttpPostError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPostError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json<_doctest_main_src_http_rs_180_0::Request>: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:199:22 [INFO] [stdout] | [INFO] [stdout] 22 | fn g() -> Result<(), HttpPostError>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json<_doctest_main_src_http_rs_180_0::Request>` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPostError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:166:27 [INFO] [stdout] | [INFO] [stdout] 166 | pub enum HttpPostError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPostError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `HttpPostError<&str>` [INFO] [stdout] --> src/http.rs:186:59 [INFO] [stdout] | [INFO] [stdout] 8 | fn f() -> Result<(), HttpPostError<&'static str>> { [INFO] [stdout] | --------------------------------------- expected `HttpPostError<&str>` because of this [INFO] [stdout] 9 | http::post("https://gomomento.com", [], b"hello".as_ref())?; [INFO] [stdout] | ----------------------------------------------------------^ the trait `From>` is not implemented for `HttpPostError<&str>` [INFO] [stdout] | | [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, HttpPostError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `HttpPostError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:186:1 [INFO] [stdout] | [INFO] [stdout] 9 | http::post("https://gomomento.com", [], b"hello".as_ref())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPostError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:166:27 [INFO] [stdout] | [INFO] [stdout] 166 | pub enum HttpPostError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPostError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:187:1 [INFO] [stdout] | [INFO] [stdout] 10 | Ok(())} [INFO] [stdout] | ^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPostError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:166:27 [INFO] [stdout] | [INFO] [stdout] 166 | pub enum HttpPostError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPostError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `HttpPostError>` [INFO] [stdout] --> src/http.rs:207:2 [INFO] [stdout] | [INFO] [stdout] 22 | fn g() -> Result<(), HttpPostError>> { [INFO] [stdout] | ---------------------------------------- expected `HttpPostError>` because of this [INFO] [stdout] 23 | [INFO] [stdout] 24 | let Json(reply): Json = http::post( [INFO] [stdout] | ________________________________- [INFO] [stdout] 25 | | "https://gomomento.com", [INFO] [stdout] 26 | | [ [INFO] [stdout] 27 | | ("authorization".to_string(), "abc123".to_string()), [INFO] [stdout] 28 | | ], [INFO] [stdout] 29 | | Json(Request { message: "hello".to_string() }) [INFO] [stdout] 30 | | )? [INFO] [stdout] | | -^ unsatisfied trait bound [INFO] [stdout] | |_| [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, HttpPostError>` [INFO] [stdout] | [INFO] [stdout] = help: the trait `From>` is not implemented for `HttpPostError>` [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `HttpPostError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json<_doctest_main_src_http_rs_180_0::Request>: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:201:32 [INFO] [stdout] | [INFO] [stdout] 24 | let Json(reply): Json = http::post( [INFO] [stdout] | ________________________________^ [INFO] [stdout] 25 | | "https://gomomento.com", [INFO] [stdout] 26 | | [ [INFO] [stdout] 27 | | ("authorization".to_string(), "abc123".to_string()), [INFO] [stdout] 28 | | ], [INFO] [stdout] 29 | | Json(Request { message: "hello".to_string() }) [INFO] [stdout] 30 | | )? [INFO] [stdout] | |__^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json<_doctest_main_src_http_rs_180_0::Request>` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPostError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:166:27 [INFO] [stdout] | [INFO] [stdout] 166 | pub enum HttpPostError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPostError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json<_doctest_main_src_http_rs_180_0::Request>: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:201:32 [INFO] [stdout] | [INFO] [stdout] 24 | let Json(reply): Json = http::post( [INFO] [stdout] | ________________________________^ [INFO] [stdout] 25 | | "https://gomomento.com", [INFO] [stdout] 26 | | [ [INFO] [stdout] 27 | | ("authorization".to_string(), "abc123".to_string()), [INFO] [stdout] ... | [INFO] [stdout] 30 | | )? [INFO] [stdout] 31 | | .extract()?; [INFO] [stdout] | |__________^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json<_doctest_main_src_http_rs_180_0::Request>` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPostError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:166:27 [INFO] [stdout] | [INFO] [stdout] 166 | pub enum HttpPostError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPostError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json<_doctest_main_src_http_rs_180_0::Request>: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:208:2 [INFO] [stdout] | [INFO] [stdout] 31 | .extract()?; [INFO] [stdout] | ^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json<_doctest_main_src_http_rs_180_0::Request>` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPostError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:166:27 [INFO] [stdout] | [INFO] [stdout] 166 | pub enum HttpPostError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPostError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json<_doctest_main_src_http_rs_180_0::Request>: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:201:32 [INFO] [stdout] | [INFO] [stdout] 24 | let Json(reply): Json = http::post( [INFO] [stdout] | ________________________________^ [INFO] [stdout] 25 | | "https://gomomento.com", [INFO] [stdout] 26 | | [ [INFO] [stdout] 27 | | ("authorization".to_string(), "abc123".to_string()), [INFO] [stdout] ... | [INFO] [stdout] 30 | | )? [INFO] [stdout] 31 | | .extract()?; [INFO] [stdout] | |___________^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json<_doctest_main_src_http_rs_180_0::Request>` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPostError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:166:27 [INFO] [stdout] | [INFO] [stdout] 166 | pub enum HttpPostError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPostError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json<_doctest_main_src_http_rs_180_0::Request>: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:208:11 [INFO] [stdout] | [INFO] [stdout] 31 | .extract()?; [INFO] [stdout] | ^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json<_doctest_main_src_http_rs_180_0::Request>` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPostError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:166:27 [INFO] [stdout] | [INFO] [stdout] 166 | pub enum HttpPostError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPostError` [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving ` as Extract>::Error == HttpPostError>` [INFO] [stdout] --> src/http.rs:208:2 [INFO] [stdout] | [INFO] [stdout] 31 | .extract()?; [INFO] [stdout] | ^^^^^^^ expected `HttpPostError>`, found `Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `HttpPostError>` [INFO] [stdout] found struct `serde_json::error::Error` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json<_doctest_main_src_http_rs_180_0::Request>: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:209:1 [INFO] [stdout] | [INFO] [stdout] 32 | Ok(()) } [INFO] [stdout] | ^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json<_doctest_main_src_http_rs_180_0::Request>` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPostError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:166:27 [INFO] [stdout] | [INFO] [stdout] 166 | pub enum HttpPostError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPostError` [INFO] [stdout] [INFO] [stdout] error: aborting due to 13 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0271, E0277. [INFO] [stdout] For more information about an error, try `rustc --explain E0271`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/http.rs - http::post_aws_sigv4 (line 404) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:414:22 [INFO] [stdout] | [INFO] [stdout] 13 | fn f() -> Result<(), http::HttpPostError>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPostError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:166:27 [INFO] [stdout] | [INFO] [stdout] 166 | pub enum HttpPostError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPostError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `HttpPostError>` [INFO] [stdout] --> src/http.rs:425:2 [INFO] [stdout] | [INFO] [stdout] 13 | fn f() -> Result<(), http::HttpPostError>> { [INFO] [stdout] | ----------------------------------------------- expected `HttpPostError>` because of this [INFO] [stdout] 14 | [INFO] [stdout] 15 | / http::post_aws_sigv4( [INFO] [stdout] 16 | | "https://gomomento.com", [INFO] [stdout] 17 | | [ [INFO] [stdout] 18 | | ("authorization".to_string(), "abc123".to_string()), [INFO] [stdout] ... | [INFO] [stdout] 23 | | Json(MyStruct { message: "hello".to_string() }) [INFO] [stdout] 24 | | )?; [INFO] [stdout] | | -^ the trait `From>` is not implemented for `HttpPostError>` [INFO] [stdout] | |_| [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, HttpPostError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `HttpPostError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:416:1 [INFO] [stdout] | [INFO] [stdout] 15 | / http::post_aws_sigv4( [INFO] [stdout] 16 | | "https://gomomento.com", [INFO] [stdout] 17 | | [ [INFO] [stdout] 18 | | ("authorization".to_string(), "abc123".to_string()), [INFO] [stdout] ... | [INFO] [stdout] 23 | | Json(MyStruct { message: "hello".to_string() }) [INFO] [stdout] 24 | | )?; [INFO] [stdout] | |__^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPostError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:166:27 [INFO] [stdout] | [INFO] [stdout] 166 | pub enum HttpPostError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPostError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:426:1 [INFO] [stdout] | [INFO] [stdout] 25 | Ok(()) } [INFO] [stdout] | ^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPostError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:166:27 [INFO] [stdout] | [INFO] [stdout] 166 | pub enum HttpPostError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPostError` [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/http.rs - http::put (line 116) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `&'static str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:120:11 [INFO] [stdout] | [INFO] [stdout] 7 | fn f() -> Result<(), HttpPutError<&'static str>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&'static str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPutError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:102:26 [INFO] [stdout] | [INFO] [stdout] 102 | pub enum HttpPutError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPutError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:130:22 [INFO] [stdout] | [INFO] [stdout] 17 | fn g() -> Result<(), HttpPutError>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPutError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:102:26 [INFO] [stdout] | [INFO] [stdout] 102 | pub enum HttpPutError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPutError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `HttpPutError<&str>` [INFO] [stdout] --> src/http.rs:121:58 [INFO] [stdout] | [INFO] [stdout] 7 | fn f() -> Result<(), HttpPutError<&'static str>> { [INFO] [stdout] | -------------------------------------- expected `HttpPutError<&str>` because of this [INFO] [stdout] 8 | http::put("https://gomomento.com", [], b"hello".as_ref())?; [INFO] [stdout] | ---------------------------------------------------------^ the trait `From>` is not implemented for `HttpPutError<&str>` [INFO] [stdout] | | [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, HttpPutError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `HttpPutError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:121:1 [INFO] [stdout] | [INFO] [stdout] 8 | http::put("https://gomomento.com", [], b"hello".as_ref())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPutError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:102:26 [INFO] [stdout] | [INFO] [stdout] 102 | pub enum HttpPutError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPutError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:122:1 [INFO] [stdout] | [INFO] [stdout] 9 | Ok(())} [INFO] [stdout] | ^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPutError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:102:26 [INFO] [stdout] | [INFO] [stdout] 102 | pub enum HttpPutError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPutError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `HttpPutError>` [INFO] [stdout] --> src/http.rs:137:2 [INFO] [stdout] | [INFO] [stdout] 17 | fn g() -> Result<(), HttpPutError>> { [INFO] [stdout] | ---------------------------------------- expected `HttpPutError>` because of this [INFO] [stdout] 18 | / http::put( [INFO] [stdout] 19 | | "https://gomomento.com", [INFO] [stdout] 20 | | [ [INFO] [stdout] 21 | | ("authorization".to_string(), "abc123".to_string()), [INFO] [stdout] 22 | | ], [INFO] [stdout] 23 | | Json(MyStruct { message: "hello".to_string() }) [INFO] [stdout] 24 | | )?; [INFO] [stdout] | | -^ the trait `From>` is not implemented for `HttpPutError>` [INFO] [stdout] | |_| [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, HttpPutError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `HttpPutError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:131:1 [INFO] [stdout] | [INFO] [stdout] 18 | / http::put( [INFO] [stdout] 19 | | "https://gomomento.com", [INFO] [stdout] 20 | | [ [INFO] [stdout] 21 | | ("authorization".to_string(), "abc123".to_string()), [INFO] [stdout] 22 | | ], [INFO] [stdout] 23 | | Json(MyStruct { message: "hello".to_string() }) [INFO] [stdout] 24 | | )?; [INFO] [stdout] | |__^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPutError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:102:26 [INFO] [stdout] | [INFO] [stdout] 102 | pub enum HttpPutError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPutError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:138:1 [INFO] [stdout] | [INFO] [stdout] 25 | Ok(())} [INFO] [stdout] | ^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPutError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:102:26 [INFO] [stdout] | [INFO] [stdout] 102 | pub enum HttpPutError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPutError` [INFO] [stdout] [INFO] [stdout] error: aborting due to 8 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/http.rs - http::put_aws_sigv4 (line 351) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:361:22 [INFO] [stdout] | [INFO] [stdout] 13 | fn f() -> Result<(), http::HttpPutError>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPutError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:102:26 [INFO] [stdout] | [INFO] [stdout] 102 | pub enum HttpPutError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPutError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `HttpPutError>` [INFO] [stdout] --> src/http.rs:372:2 [INFO] [stdout] | [INFO] [stdout] 13 | fn f() -> Result<(), http::HttpPutError>> { [INFO] [stdout] | ---------------------------------------------- expected `HttpPutError>` because of this [INFO] [stdout] 14 | [INFO] [stdout] 15 | / http::put_aws_sigv4( [INFO] [stdout] 16 | | "https://gomomento.com", [INFO] [stdout] 17 | | [ [INFO] [stdout] 18 | | ("authorization".to_string(), "abc123".to_string()), [INFO] [stdout] ... | [INFO] [stdout] 23 | | Json(MyStruct { message: "hello".to_string() }) [INFO] [stdout] 24 | | )?; [INFO] [stdout] | | -^ the trait `From>` is not implemented for `HttpPutError>` [INFO] [stdout] | |_| [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, HttpPutError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `HttpPutError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:363:1 [INFO] [stdout] | [INFO] [stdout] 15 | / http::put_aws_sigv4( [INFO] [stdout] 16 | | "https://gomomento.com", [INFO] [stdout] 17 | | [ [INFO] [stdout] 18 | | ("authorization".to_string(), "abc123".to_string()), [INFO] [stdout] ... | [INFO] [stdout] 23 | | Json(MyStruct { message: "hello".to_string() }) [INFO] [stdout] 24 | | )?; [INFO] [stdout] | |__^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPutError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:102:26 [INFO] [stdout] | [INFO] [stdout] 102 | pub enum HttpPutError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPutError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/http.rs:373:1 [INFO] [stdout] | [INFO] [stdout] 25 | Ok(()) } [INFO] [stdout] | ^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `HttpPutError` [INFO] [stdout] --> /opt/rustwide/workdir/src/http.rs:102:26 [INFO] [stdout] | [INFO] [stdout] 102 | pub enum HttpPutError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `HttpPutError` [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/spawn.rs - spawn::spawn (line 21) stdout ---- [INFO] [stdout] error[E0603]: module `spawn` is private [INFO] [stdout] --> src/spawn.rs:23:29 [INFO] [stdout] | [INFO] [stdout] 5 | use momento_functions_host::spawn::{self, FunctionSpawnError}; [INFO] [stdout] | ^^^^^ private module [INFO] [stdout] | [INFO] [stdout] note: the module `spawn` is defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/lib.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | mod spawn; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] error[E0603]: module `spawn` is private [INFO] [stdout] --> src/spawn.rs:23:29 [INFO] [stdout] | [INFO] [stdout] 5 | use momento_functions_host::spawn::{self, FunctionSpawnError}; [INFO] [stdout] | ^^^^^ ------------------ enum `FunctionSpawnError` is not publicly re-exported [INFO] [stdout] | | [INFO] [stdout] | private module [INFO] [stdout] | [INFO] [stdout] note: the module `spawn` is defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/lib.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | mod spawn; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0603`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/topics.rs - topics::publish (line 49) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/topics.rs:61:22 [INFO] [stdout] | [INFO] [stdout] 15 | fn f() -> Result<(), PublishError>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `momento_functions_host::topics::PublishError` [INFO] [stdout] --> /opt/rustwide/workdir/src/topics.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum PublishError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `PublishError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `momento_functions_host::topics::PublishError>` [INFO] [stdout] --> src/topics.rs:62:74 [INFO] [stdout] | [INFO] [stdout] 15 | fn f() -> Result<(), PublishError>> { [INFO] [stdout] | ---------------------------------------- expected `momento_functions_host::topics::PublishError>` because of this [INFO] [stdout] 16 | topics::publish("my_topic", Json(MyStruct{ hello: "hello".to_string() }))?; [INFO] [stdout] | -------------------------------------------------------------------------^ unsatisfied trait bound [INFO] [stdout] | | [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, momento_functions_host::topics::PublishError>` [INFO] [stdout] | [INFO] [stdout] = help: the trait `From>` is not implemented for `momento_functions_host::topics::PublishError>` [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `momento_functions_host::topics::PublishError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/topics.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 16 | topics::publish("my_topic", Json(MyStruct{ hello: "hello".to_string() }))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `momento_functions_host::topics::PublishError` [INFO] [stdout] --> /opt/rustwide/workdir/src/topics.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum PublishError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `PublishError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Json: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/topics.rs:63:1 [INFO] [stdout] | [INFO] [stdout] 17 | Ok(()) } [INFO] [stdout] | ^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `Json` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `momento_functions_host::topics::PublishError` [INFO] [stdout] --> /opt/rustwide/workdir/src/topics.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum PublishError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `PublishError` [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/topics.rs - topics::publish (line 27) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `&'static str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/topics.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 9 | fn f() -> Result<(), PublishError<&'static str>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&'static str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `momento_functions_host::topics::PublishError` [INFO] [stdout] --> /opt/rustwide/workdir/src/topics.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum PublishError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `PublishError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `momento_functions_host::topics::PublishError<&str>` [INFO] [stdout] --> src/topics.rs:34:43 [INFO] [stdout] | [INFO] [stdout] 9 | fn f() -> Result<(), PublishError<&'static str>> { [INFO] [stdout] | -------------------------------------- expected `momento_functions_host::topics::PublishError<&str>` because of this [INFO] [stdout] 10 | topics::publish("my_topic", "hello there")?; [INFO] [stdout] | ------------------------------------------^ unsatisfied trait bound [INFO] [stdout] | | [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, momento_functions_host::topics::PublishError>` [INFO] [stdout] | [INFO] [stdout] = help: the trait `From>` is not implemented for `momento_functions_host::topics::PublishError<&str>` [INFO] [stderr] error: doctest failed, to rerun pass `--doc` [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `momento_functions_host::topics::PublishError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/topics.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 10 | topics::publish("my_topic", "hello there")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `momento_functions_host::topics::PublishError` [INFO] [stdout] --> /opt/rustwide/workdir/src/topics.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum PublishError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `PublishError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/topics.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 11 | Ok(()) } [INFO] [stdout] | ^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `momento_functions_host::topics::PublishError` [INFO] [stdout] --> /opt/rustwide/workdir/src/topics.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum PublishError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `PublishError` [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/topics.rs - topics::publish (line 38) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `&'static str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/topics.rs:44:11 [INFO] [stdout] | [INFO] [stdout] 9 | fn f() -> Result<(), PublishError<&'static str>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&'static str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `momento_functions_host::topics::PublishError` [INFO] [stdout] --> /opt/rustwide/workdir/src/topics.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum PublishError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `PublishError` [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `momento_functions_host::topics::PublishError<&str>` [INFO] [stdout] --> src/topics.rs:45:53 [INFO] [stdout] | [INFO] [stdout] 9 | fn f() -> Result<(), PublishError<&'static str>> { [INFO] [stdout] | -------------------------------------- expected `momento_functions_host::topics::PublishError<&str>` because of this [INFO] [stdout] 10 | topics::publish("my_topic", b"hello there".to_vec())?; [INFO] [stdout] | ----------------------------------------------------^ unsatisfied trait bound [INFO] [stdout] | | [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, momento_functions_host::topics::PublishError>` [INFO] [stdout] | [INFO] [stdout] = help: the trait `From>` is not implemented for `momento_functions_host::topics::PublishError<&str>` [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `momento_functions_host::topics::PublishError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/topics.rs:45:1 [INFO] [stdout] | [INFO] [stdout] 10 | topics::publish("my_topic", b"hello there".to_vec())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `momento_functions_host::topics::PublishError` [INFO] [stdout] --> /opt/rustwide/workdir/src/topics.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum PublishError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `PublishError` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `&str: momento_functions_host::encoding::EncodeError` is not satisfied [INFO] [stdout] --> src/topics.rs:46:1 [INFO] [stdout] | [INFO] [stdout] 11 | Ok(()) } [INFO] [stdout] | ^^ the trait `momento_functions_host::encoding::EncodeError` is not implemented for `&str` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `momento_functions_host::encoding::EncodeError`: [INFO] [stdout] Infallible [INFO] [stdout] serde_json::error::Error [INFO] [stdout] note: required by a bound in `momento_functions_host::topics::PublishError` [INFO] [stdout] --> /opt/rustwide/workdir/src/topics.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum PublishError { [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `PublishError` [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] src/aws/ddb.rs - aws::ddb::DynamoDBClient::get_item (line 84) [INFO] [stdout] src/aws/ddb.rs - aws::ddb::Item (line 375) [INFO] [stdout] src/aws/lambda.rs - aws::lambda::LambdaClient::invoke (line 66) [INFO] [stdout] src/aws/lambda.rs - aws::lambda::LambdaClient::invoke (line 98) [INFO] [stdout] src/cache.rs - cache::get (line 40) [INFO] [stdout] src/cache.rs - cache::get (line 50) [INFO] [stdout] src/cache.rs - cache::set (line 78) [INFO] [stdout] src/cache.rs - cache::set (line 93) [INFO] [stdout] src/http.rs - http::Response::extract (line 27) [INFO] [stdout] src/http.rs - http::post (line 180) [INFO] [stdout] src/http.rs - http::post_aws_sigv4 (line 404) [INFO] [stdout] src/http.rs - http::put (line 116) [INFO] [stdout] src/http.rs - http::put_aws_sigv4 (line 351) [INFO] [stdout] src/redis.rs - redis::RedisClient::pipe (line 197) [INFO] [stdout] src/spawn.rs - spawn::spawn (line 21) [INFO] [stdout] src/topics.rs - topics::publish (line 27) [INFO] [stdout] src/topics.rs - topics::publish (line 38) [INFO] [stdout] src/topics.rs - topics::publish (line 49) [INFO] [stdout] [INFO] [stdout] test result: FAILED. 14 passed; 18 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.12s [INFO] [stdout] [INFO] [stdout] all doctests ran in 2.51s; merged doctests compilation took 0.38s [INFO] running `Command { std: "docker" "inspect" "2434f4ec9c4eaf137ed4a6b25afac139315e5661e1c73f956c987b50e88b06c0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2434f4ec9c4eaf137ed4a6b25afac139315e5661e1c73f956c987b50e88b06c0", kill_on_drop: false }` [INFO] [stdout] 2434f4ec9c4eaf137ed4a6b25afac139315e5661e1c73f956c987b50e88b06c0