[INFO] fetching crate prost-helper 0.8.3... [INFO] checking prost-helper-0.8.3 against master#350d0ef0ec0493e6d21cfb265cb8211a0e74d766 for pr-145342-1 [INFO] extracting crate prost-helper 0.8.3 into /workspace/builds/worker-2-tc1/source [INFO] started tweaking crates.io crate prost-helper 0.8.3 [INFO] finished tweaking crates.io crate prost-helper 0.8.3 [INFO] tweaked toml for crates.io crate prost-helper 0.8.3 written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate prost-helper 0.8.3 on toolchain 350d0ef0ec0493e6d21cfb265cb8211a0e74d766 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 31 packages to latest compatible versions [INFO] [stderr] Adding base64 v0.21.7 (available: v0.22.1) [INFO] [stderr] Adding prost v0.12.6 (available: v0.14.1) [INFO] [stderr] Adding uuid7 v0.7.2 (available: v1.1.0) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded fstr v0.2.13 [INFO] [stderr] Downloaded uuid7 v0.7.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8b035169cad6d31e4f53cfb610fb65b9d935e342acd76c6b139970ba2204b13e [INFO] running `Command { std: "docker" "start" "-a" "8b035169cad6d31e4f53cfb610fb65b9d935e342acd76c6b139970ba2204b13e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8b035169cad6d31e4f53cfb610fb65b9d935e342acd76c6b139970ba2204b13e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8b035169cad6d31e4f53cfb610fb65b9d935e342acd76c6b139970ba2204b13e", kill_on_drop: false }` [INFO] [stdout] 8b035169cad6d31e4f53cfb610fb65b9d935e342acd76c6b139970ba2204b13e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 18d14e9dea3f98b62b648fcf61adaa2682cd03be7211009fbf68e602576e61bc [INFO] running `Command { std: "docker" "start" "-a" "18d14e9dea3f98b62b648fcf61adaa2682cd03be7211009fbf68e602576e61bc", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.101 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling libc v0.2.175 [INFO] [stderr] Compiling zerocopy v0.8.26 [INFO] [stderr] Checking cfg-if v1.0.3 [INFO] [stderr] Compiling anyhow v1.0.99 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Compiling serde_json v1.0.143 [INFO] [stderr] Checking fstr v0.2.13 [INFO] [stderr] Checking itoa v1.0.15 [INFO] [stderr] Checking bytes v1.10.1 [INFO] [stderr] Checking ryu v1.0.20 [INFO] [stderr] Checking memchr v2.7.5 [INFO] [stderr] Checking base64 v0.21.7 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling itertools v0.12.1 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling prost-derive v0.12.6 [INFO] [stderr] Checking uuid7 v0.7.2 [INFO] [stderr] Checking prost v0.12.6 [INFO] [stderr] Checking prost-helper v0.8.3 (/opt/rustwide/workdir) [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | $(impl std::convert::From<$type> for Vec { [INFO] [stdout] | ^^^^^------------------^^^^^^^^^^^^---^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `Vec` is not local [INFO] [stdout] | `From` is not local [INFO] [stdout] ... [INFO] [stdout] 117 | fn test_prost_try_into_vec() { [INFO] [stdout] | ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec` [INFO] [stdout] 118 | prost_into_vec!((Hello, 32), (World, 256)); [INFO] [stdout] | ------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | `Hello` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `prost_into_vec` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the macro `prost_into_vec` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | impl std::convert::From<&$type> for Vec { [INFO] [stdout] | ^^^^^------------------^^^^^^^^^^^^^---^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `Vec` is not local [INFO] [stdout] | `From` is not local [INFO] [stdout] ... [INFO] [stdout] 117 | fn test_prost_try_into_vec() { [INFO] [stdout] | ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec` [INFO] [stdout] 118 | prost_into_vec!((Hello, 32), (World, 256)); [INFO] [stdout] | ------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | `Hello` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `prost_into_vec` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this warning originates in the macro `prost_into_vec` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | $(impl std::convert::From<$type> for Vec { [INFO] [stdout] | ^^^^^------------------^^^^^^^^^^^^---^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `Vec` is not local [INFO] [stdout] | `From` is not local [INFO] [stdout] ... [INFO] [stdout] 117 | fn test_prost_try_into_vec() { [INFO] [stdout] | ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec` [INFO] [stdout] 118 | prost_into_vec!((Hello, 32), (World, 256)); [INFO] [stdout] | ------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | `World` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `prost_into_vec` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this warning originates in the macro `prost_into_vec` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | impl std::convert::From<&$type> for Vec { [INFO] [stdout] | ^^^^^------------------^^^^^^^^^^^^^---^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `Vec` is not local [INFO] [stdout] | `From` is not local [INFO] [stdout] ... [INFO] [stdout] 117 | fn test_prost_try_into_vec() { [INFO] [stdout] | ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec` [INFO] [stdout] 118 | prost_into_vec!((Hello, 32), (World, 256)); [INFO] [stdout] | ------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | `World` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `prost_into_vec` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this warning originates in the macro `prost_into_vec` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:52:11 [INFO] [stdout] | [INFO] [stdout] 52 | $(impl std::convert::TryFrom> for $type { [INFO] [stdout] | ^^^^^---------------------^---^^^^^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `Vec` is not local [INFO] [stdout] | `TryFrom` is not local [INFO] [stdout] ... [INFO] [stdout] 117 | fn test_prost_try_into_vec() { [INFO] [stdout] | ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec` [INFO] [stdout] 118 | prost_into_vec!((Hello, 32), (World, 256)); [INFO] [stdout] 119 | vec_try_into_prost!(Hello, World); [INFO] [stdout] | --------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | `Hello` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `vec_try_into_prost` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this warning originates in the macro `vec_try_into_prost` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:52:51 [INFO] [stdout] | [INFO] [stdout] 52 | $(impl std::convert::TryFrom> for $type { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 53 | | type Error = prost::DecodeError; [INFO] [stdout] 54 | | fn try_from(buf: Vec) -> Result { [INFO] [stdout] 55 | | let msg: $type = Message::decode(&buf[..])?; [INFO] [stdout] ... | [INFO] [stdout] 60 | | impl std::convert::TryFrom<&[u8]> for $type { [INFO] [stdout] | | ^ --------------------- `TryFrom` is not local [INFO] [stdout] | |________| [INFO] [stdout] | [INFO] [stdout] ... [INFO] [stdout] 117 | fn test_prost_try_into_vec() { [INFO] [stdout] | ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec` [INFO] [stdout] 118 | prost_into_vec!((Hello, 32), (World, 256)); [INFO] [stdout] 119 | vec_try_into_prost!(Hello, World); [INFO] [stdout] | --------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | `Hello` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `vec_try_into_prost` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this warning originates in the macro `vec_try_into_prost` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:52:11 [INFO] [stdout] | [INFO] [stdout] 52 | $(impl std::convert::TryFrom> for $type { [INFO] [stdout] | ^^^^^---------------------^---^^^^^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `Vec` is not local [INFO] [stdout] | `TryFrom` is not local [INFO] [stdout] ... [INFO] [stdout] 117 | fn test_prost_try_into_vec() { [INFO] [stdout] | ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec` [INFO] [stdout] 118 | prost_into_vec!((Hello, 32), (World, 256)); [INFO] [stdout] 119 | vec_try_into_prost!(Hello, World); [INFO] [stdout] | --------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | `World` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `vec_try_into_prost` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this warning originates in the macro `vec_try_into_prost` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:52:51 [INFO] [stdout] | [INFO] [stdout] 52 | $(impl std::convert::TryFrom> for $type { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 53 | | type Error = prost::DecodeError; [INFO] [stdout] 54 | | fn try_from(buf: Vec) -> Result { [INFO] [stdout] 55 | | let msg: $type = Message::decode(&buf[..])?; [INFO] [stdout] ... | [INFO] [stdout] 60 | | impl std::convert::TryFrom<&[u8]> for $type { [INFO] [stdout] | | ^ --------------------- `TryFrom` is not local [INFO] [stdout] | |________| [INFO] [stdout] | [INFO] [stdout] ... [INFO] [stdout] 117 | fn test_prost_try_into_vec() { [INFO] [stdout] | ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec` [INFO] [stdout] 118 | prost_into_vec!((Hello, 32), (World, 256)); [INFO] [stdout] 119 | vec_try_into_prost!(Hello, World); [INFO] [stdout] | --------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | `World` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `vec_try_into_prost` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this warning originates in the macro `vec_try_into_prost` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | $(impl std::convert::From<$type> for bytes::Bytes { [INFO] [stdout] | ^^^^^------------------^^^^^^^^^^^^------------ [INFO] [stdout] | | | [INFO] [stdout] | | `Bytes` is not local [INFO] [stdout] | `From` is not local [INFO] [stdout] ... [INFO] [stdout] 132 | fn test_prost_try_into_bytes() { [INFO] [stdout] | ------------------------------ move the `impl` block outside of this function `test_prost_try_into_bytes` [INFO] [stdout] 133 | use bytes::Bytes; [INFO] [stdout] 134 | prost_into_bytes!((Hello, 32), (World, 256)); [INFO] [stdout] | -------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | `Hello` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `prost_into_bytes` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this warning originates in the macro `prost_into_bytes` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | impl std::convert::From<&$type> for bytes::Bytes { [INFO] [stdout] | ^^^^^------------------^^^^^^^^^^^^^------------ [INFO] [stdout] | | | [INFO] [stdout] | | `Bytes` is not local [INFO] [stdout] | `From` is not local [INFO] [stdout] ... [INFO] [stdout] 132 | fn test_prost_try_into_bytes() { [INFO] [stdout] | ------------------------------ move the `impl` block outside of this function `test_prost_try_into_bytes` [INFO] [stdout] 133 | use bytes::Bytes; [INFO] [stdout] 134 | prost_into_bytes!((Hello, 32), (World, 256)); [INFO] [stdout] | -------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | `Hello` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `prost_into_bytes` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this warning originates in the macro `prost_into_bytes` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | $(impl std::convert::From<$type> for bytes::Bytes { [INFO] [stdout] | ^^^^^------------------^^^^^^^^^^^^------------ [INFO] [stdout] | | | [INFO] [stdout] | | `Bytes` is not local [INFO] [stdout] | `From` is not local [INFO] [stdout] ... [INFO] [stdout] 132 | fn test_prost_try_into_bytes() { [INFO] [stdout] | ------------------------------ move the `impl` block outside of this function `test_prost_try_into_bytes` [INFO] [stdout] 133 | use bytes::Bytes; [INFO] [stdout] 134 | prost_into_bytes!((Hello, 32), (World, 256)); [INFO] [stdout] | -------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | `World` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `prost_into_bytes` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this warning originates in the macro `prost_into_bytes` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | impl std::convert::From<&$type> for bytes::Bytes { [INFO] [stdout] | ^^^^^------------------^^^^^^^^^^^^^------------ [INFO] [stdout] | | | [INFO] [stdout] | | `Bytes` is not local [INFO] [stdout] | `From` is not local [INFO] [stdout] ... [INFO] [stdout] 132 | fn test_prost_try_into_bytes() { [INFO] [stdout] | ------------------------------ move the `impl` block outside of this function `test_prost_try_into_bytes` [INFO] [stdout] 133 | use bytes::Bytes; [INFO] [stdout] 134 | prost_into_bytes!((Hello, 32), (World, 256)); [INFO] [stdout] | -------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | `World` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `prost_into_bytes` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this warning originates in the macro `prost_into_bytes` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:73:11 [INFO] [stdout] | [INFO] [stdout] 73 | $(impl std::convert::TryFrom for $type { [INFO] [stdout] | ^^^^^---------------------^------------^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `Bytes` is not local [INFO] [stdout] | `TryFrom` is not local [INFO] [stdout] ... [INFO] [stdout] 132 | fn test_prost_try_into_bytes() { [INFO] [stdout] | ------------------------------ move the `impl` block outside of this function `test_prost_try_into_bytes` [INFO] [stdout] ... [INFO] [stdout] 135 | bytes_try_into_prost!(Hello, World); [INFO] [stdout] | ----------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | `Hello` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `bytes_try_into_prost` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this warning originates in the macro `bytes_try_into_prost` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:73:11 [INFO] [stdout] | [INFO] [stdout] 73 | $(impl std::convert::TryFrom for $type { [INFO] [stdout] | ^^^^^---------------------^------------^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `Bytes` is not local [INFO] [stdout] | `TryFrom` is not local [INFO] [stdout] ... [INFO] [stdout] 132 | fn test_prost_try_into_bytes() { [INFO] [stdout] | ------------------------------ move the `impl` block outside of this function `test_prost_try_into_bytes` [INFO] [stdout] ... [INFO] [stdout] 135 | bytes_try_into_prost!(Hello, World); [INFO] [stdout] | ----------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | `World` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `bytes_try_into_prost` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this warning originates in the macro `bytes_try_into_prost` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:88:11 [INFO] [stdout] | [INFO] [stdout] 88 | $(impl ToJson for $type { [INFO] [stdout] | ^^^^^------^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `ToJson` is not local [INFO] [stdout] ... [INFO] [stdout] 145 | fn test_prost_to_json() { [INFO] [stdout] | ----------------------- move the `impl` block outside of this function `test_prost_to_json` [INFO] [stdout] ... [INFO] [stdout] 148 | prost_to_json!(Hello, World); [INFO] [stdout] | ---------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | `Hello` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `prost_to_json` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this warning originates in the macro `prost_to_json` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/macros.rs:88:11 [INFO] [stdout] | [INFO] [stdout] 88 | $(impl ToJson for $type { [INFO] [stdout] | ^^^^^------^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `ToJson` is not local [INFO] [stdout] ... [INFO] [stdout] 145 | fn test_prost_to_json() { [INFO] [stdout] | ----------------------- move the `impl` block outside of this function `test_prost_to_json` [INFO] [stdout] ... [INFO] [stdout] 148 | prost_to_json!(Hello, World); [INFO] [stdout] | ---------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | `World` is not local [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: the macro `prost_to_json` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this warning originates in the macro `prost_to_json` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.89s [INFO] running `Command { std: "docker" "inspect" "18d14e9dea3f98b62b648fcf61adaa2682cd03be7211009fbf68e602576e61bc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "18d14e9dea3f98b62b648fcf61adaa2682cd03be7211009fbf68e602576e61bc", kill_on_drop: false }` [INFO] [stdout] 18d14e9dea3f98b62b648fcf61adaa2682cd03be7211009fbf68e602576e61bc