[INFO] fetching crate protobuf-json 0.3.0... [INFO] checking protobuf-json-0.3.0 against try#f47dd4da3ae8c32c9e65d307bfe640b143e674df for pr-77526 [INFO] extracting crate protobuf-json 0.3.0 into /workspace/builds/worker-10/source [INFO] validating manifest of crates.io crate protobuf-json 0.3.0 on toolchain f47dd4da3ae8c32c9e65d307bfe640b143e674df [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking crates.io crate protobuf-json 0.3.0 [INFO] finished tweaking crates.io crate protobuf-json 0.3.0 [INFO] tweaked toml for crates.io crate protobuf-json 0.3.0 written to /workspace/builds/worker-10/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] cab62acdb2f6d3b0cb6cb71b8897bc738e4cc07a1bdcaa6ad3d6a962b7235260 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "cab62acdb2f6d3b0cb6cb71b8897bc738e4cc07a1bdcaa6ad3d6a962b7235260", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "cab62acdb2f6d3b0cb6cb71b8897bc738e4cc07a1bdcaa6ad3d6a962b7235260", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cab62acdb2f6d3b0cb6cb71b8897bc738e4cc07a1bdcaa6ad3d6a962b7235260", kill_on_drop: false }` [INFO] [stdout] cab62acdb2f6d3b0cb6cb71b8897bc738e4cc07a1bdcaa6ad3d6a962b7235260 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f93345a72a4736e5a33ec98ba19ec8dc3576fc47e947a81b453c139aec7536e9 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "f93345a72a4736e5a33ec98ba19ec8dc3576fc47e947a81b453c139aec7536e9", kill_on_drop: false }` [INFO] [stderr] Compiling serde v1.0.116 [INFO] [stderr] Compiling protobuf v1.7.5 [INFO] [stderr] Checking itoa v0.4.6 [INFO] [stderr] Checking serde_json v1.0.58 [INFO] [stderr] Checking protobuf-json v0.3.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:11:32 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn proto_to_json(message: &Message) -> serde_json::Value { [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:25:22 [INFO] [stdout] | [INFO] [stdout] 25 | fn field_to_json(m: &Message, fd: &FieldDescriptor) -> Option { [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:44:18 [INFO] [stdout] | [INFO] [stdout] 44 | message: &'a Message, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:45:19 [INFO] [stdout] | [INFO] [stdout] 45 | get_size_fn: &Fn(&Message) -> usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Message) -> usize` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:45:23 [INFO] [stdout] | [INFO] [stdout] 45 | get_size_fn: &Fn(&Message) -> usize, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:46:22 [INFO] [stdout] | [INFO] [stdout] 46 | extract_one_fn: &Fn(&'a Message, usize) -> &'a T) -> Vec<&'a T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&'a Message, usize) -> &'a T` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:46:29 [INFO] [stdout] | [INFO] [stdout] 46 | extract_one_fn: &Fn(&'a Message, usize) -> &'a T) -> Vec<&'a T> { [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:57:15 [INFO] [stdout] | [INFO] [stdout] 57 | message: &Message, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:58:18 [INFO] [stdout] | [INFO] [stdout] 58 | extract_fn: &Fn(&Message) -> Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Message) -> Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:58:22 [INFO] [stdout] | [INFO] [stdout] 58 | extract_fn: &Fn(&Message) -> Vec, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:59:22 [INFO] [stdout] | [INFO] [stdout] 59 | convert_one_fn: &Fn(T) -> serde_json::Value) -> serde_json::Value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(T) -> serde_json::Value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:65:37 [INFO] [stdout] | [INFO] [stdout] 65 | fn repeated_field_to_json(message: &Message, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:130:40 [INFO] [stdout] | [INFO] [stdout] 130 | let mut sub_messages: Vec<&protobuf::Message> = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn protobuf::Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:162:37 [INFO] [stdout] | [INFO] [stdout] 162 | fn singular_field_to_json(message: &protobuf::Message, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn protobuf::Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:201:31 [INFO] [stdout] | [INFO] [stdout] 201 | let sub_message: &protobuf::Message = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn protobuf::Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/test_proto.rs:131:26 [INFO] [stdout] | [INFO] [stdout] 131 | fn as_any(&self) -> &::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::any::Any)` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/test_proto.rs:132:18 [INFO] [stdout] | [INFO] [stdout] 132 | self as &::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::any::Any)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/test_proto.rs:134:38 [INFO] [stdout] | [INFO] [stdout] 134 | fn as_any_mut(&mut self) -> &mut ::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::any::Any)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/test_proto.rs:135:22 [INFO] [stdout] | [INFO] [stdout] 135 | self as &mut ::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::any::Any)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/test_proto.rs:137:55 [INFO] [stdout] | [INFO] [stdout] 137 | fn into_any(self: Box) -> ::std::boxed::Box<::std::any::Any> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::any::Any)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/test_proto.rs:1653:26 [INFO] [stdout] | [INFO] [stdout] 1653 | fn as_any(&self) -> &::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::any::Any)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/test_proto.rs:1654:18 [INFO] [stdout] | [INFO] [stdout] 1654 | self as &::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::any::Any)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/test_proto.rs:1656:38 [INFO] [stdout] | [INFO] [stdout] 1656 | fn as_any_mut(&mut self) -> &mut ::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::any::Any)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/test_proto.rs:1657:22 [INFO] [stdout] | [INFO] [stdout] 1657 | self as &mut ::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::any::Any)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/test_proto.rs:1659:55 [INFO] [stdout] | [INFO] [stdout] 1659 | fn into_any(self: Box) -> ::std::boxed::Box<::std::any::Any> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::any::Any)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/test_proto.rs:2082:26 [INFO] [stdout] | [INFO] [stdout] 2082 | fn as_any(&self) -> &::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::any::Any)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/test_proto.rs:2083:18 [INFO] [stdout] | [INFO] [stdout] 2083 | self as &::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::any::Any)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/test_proto.rs:2085:38 [INFO] [stdout] | [INFO] [stdout] 2085 | fn as_any_mut(&mut self) -> &mut ::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::any::Any)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/test_proto.rs:2086:22 [INFO] [stdout] | [INFO] [stdout] 2086 | self as &mut ::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::any::Any)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/test_proto.rs:2088:55 [INFO] [stdout] | [INFO] [stdout] 2088 | fn into_any(self: Box) -> ::std::boxed::Box<::std::any::Any> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::any::Any)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests/mod.rs:160:43 [INFO] [stdout] | [INFO] [stdout] 160 | fn to_serde_array(v: Vec, conv_fn: &Fn(T) -> serde_json::Value) -> serde_json::Value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(T) -> serde_json::Value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:11:32 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn proto_to_json(message: &Message) -> serde_json::Value { [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:25:22 [INFO] [stdout] | [INFO] [stdout] 25 | fn field_to_json(m: &Message, fd: &FieldDescriptor) -> Option { [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:44:18 [INFO] [stdout] | [INFO] [stdout] 44 | message: &'a Message, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:45:19 [INFO] [stdout] | [INFO] [stdout] 45 | get_size_fn: &Fn(&Message) -> usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Message) -> usize` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:45:23 [INFO] [stdout] | [INFO] [stdout] 45 | get_size_fn: &Fn(&Message) -> usize, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:46:22 [INFO] [stdout] | [INFO] [stdout] 46 | extract_one_fn: &Fn(&'a Message, usize) -> &'a T) -> Vec<&'a T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&'a Message, usize) -> &'a T` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:46:29 [INFO] [stdout] | [INFO] [stdout] 46 | extract_one_fn: &Fn(&'a Message, usize) -> &'a T) -> Vec<&'a T> { [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:57:15 [INFO] [stdout] | [INFO] [stdout] 57 | message: &Message, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:58:18 [INFO] [stdout] | [INFO] [stdout] 58 | extract_fn: &Fn(&Message) -> Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Message) -> Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:58:22 [INFO] [stdout] | [INFO] [stdout] 58 | extract_fn: &Fn(&Message) -> Vec, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:59:22 [INFO] [stdout] | [INFO] [stdout] 59 | convert_one_fn: &Fn(T) -> serde_json::Value) -> serde_json::Value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(T) -> serde_json::Value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:65:37 [INFO] [stdout] | [INFO] [stdout] 65 | fn repeated_field_to_json(message: &Message, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:130:40 [INFO] [stdout] | [INFO] [stdout] 130 | let mut sub_messages: Vec<&protobuf::Message> = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn protobuf::Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:162:37 [INFO] [stdout] | [INFO] [stdout] 162 | fn singular_field_to_json(message: &protobuf::Message, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn protobuf::Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:201:31 [INFO] [stdout] | [INFO] [stdout] 201 | let sub_message: &protobuf::Message = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn protobuf::Message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 31 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 12.90s [INFO] running `Command { std: "docker" "inspect" "f93345a72a4736e5a33ec98ba19ec8dc3576fc47e947a81b453c139aec7536e9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f93345a72a4736e5a33ec98ba19ec8dc3576fc47e947a81b453c139aec7536e9", kill_on_drop: false }` [INFO] [stdout] f93345a72a4736e5a33ec98ba19ec8dc3576fc47e947a81b453c139aec7536e9