[INFO] fetching crate blurmock 0.1.3...
[INFO] checking blurmock-0.1.3 against master#b0696a5160711c068cb1f01b7437db7990d15750 for pr-121848
[INFO] extracting crate blurmock 0.1.3 into /workspace/builds/worker-1-tc1/source
[INFO] validating manifest of crates.io crate blurmock 0.1.3 on toolchain b0696a5160711c068cb1f01b7437db7990d15750
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate blurmock 0.1.3
[INFO] finished tweaking crates.io crate blurmock 0.1.3
[INFO] tweaked toml for crates.io crate blurmock 0.1.3 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded hex v0.3.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 51d54854310dbf75d808e3374e84dc6f443e902d1fb61cf4591ff510f27c0b0a
[INFO] running `Command { std: "docker" "start" "-a" "51d54854310dbf75d808e3374e84dc6f443e902d1fb61cf4591ff510f27c0b0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "51d54854310dbf75d808e3374e84dc6f443e902d1fb61cf4591ff510f27c0b0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "51d54854310dbf75d808e3374e84dc6f443e902d1fb61cf4591ff510f27c0b0a", kill_on_drop: false }`
[INFO] [stdout] 51d54854310dbf75d808e3374e84dc6f443e902d1fb61cf4591ff510f27c0b0a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1e8dd8f2dd11c7c308c526440271243ed57511b917002fd88ca30bb63ae06d48
[INFO] running `Command { std: "docker" "start" "-a" "1e8dd8f2dd11c7c308c526440271243ed57511b917002fd88ca30bb63ae06d48", kill_on_drop: false }`
[INFO] [stderr]     Checking hex v0.3.2
[INFO] [stderr]     Checking blurmock v0.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the item `hex` is imported redundantly
[INFO] [stdout]  --> src/fake_adapter.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use hex;
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate hex;
[INFO] [stdout]   | ----------------- the item `hex` is already imported here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:164:23
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let devices = try!(self.get_devices());
[INFO] [stdout]     |                       ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:175:23
[INFO] [stdout]     |
[INFO] [stdout] 175 |         let devices = try!(self.get_devices());
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:185:23
[INFO] [stdout]     |
[INFO] [stdout] 185 |         let devices = try!(self.get_devices());
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:211:24
[INFO] [stdout]     |
[INFO] [stdout] 211 |         let ad_datas = try!(self.get_ad_datas());
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:242:40
[INFO] [stdout]     |
[INFO] [stdout] 242 |         let (vendor_id_source,_,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:247:33
[INFO] [stdout]     |
[INFO] [stdout] 247 |         let (_,vendor_id,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:252:34
[INFO] [stdout]     |
[INFO] [stdout] 252 |         let (_,_,product_id,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:257:33
[INFO] [stdout]     |
[INFO] [stdout] 257 |         let (_,_,_,device_id) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `hex` is imported redundantly
[INFO] [stdout]  --> src/fake_device.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use hex;
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate hex;
[INFO] [stdout]   | ----------------- the item `hex` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:224:40
[INFO] [stdout]     |
[INFO] [stdout] 224 |         let (vendor_id_source,_,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:229:33
[INFO] [stdout]     |
[INFO] [stdout] 229 |         let (_,vendor_id,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:234:34
[INFO] [stdout]     |
[INFO] [stdout] 234 |         let (_,_,product_id,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:239:33
[INFO] [stdout]     |
[INFO] [stdout] 239 |         let (_,_,_,device_id) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:244:14
[INFO] [stdout]     |
[INFO] [stdout] 244 |         if !(try!(self.is_connected())) {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:257:14
[INFO] [stdout]     |
[INFO] [stdout] 257 |         if !(try!(self.is_connected())) {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:270:24
[INFO] [stdout]     |
[INFO] [stdout] 270 |         let services = try!(self.get_gatt_service_structs());
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:307:30
[INFO] [stdout]     |
[INFO] [stdout] 307 |         let is_connectable = try!(self.is_connectable());
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:308:28
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let is_connected = try!(self.is_connected());
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:320:28
[INFO] [stdout]     |
[INFO] [stdout] 320 |         let is_connected = try!(self.is_connected());
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/fake_service.rs:83:31
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let characteristics = try!(self.get_gatt_characteristic_structs());
[INFO] [stdout]    |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_characteristic.rs:101:27
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let descriptors = try!(self.get_gatt_descriptor_structs());
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `hex` is imported redundantly
[INFO] [stdout]  --> src/fake_adapter.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use hex;
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate hex;
[INFO] [stdout]   | ----------------- the item `hex` is already imported here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:164:23
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let devices = try!(self.get_devices());
[INFO] [stdout]     |                       ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:175:23
[INFO] [stdout]     |
[INFO] [stdout] 175 |         let devices = try!(self.get_devices());
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:185:23
[INFO] [stdout]     |
[INFO] [stdout] 185 |         let devices = try!(self.get_devices());
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:211:24
[INFO] [stdout]     |
[INFO] [stdout] 211 |         let ad_datas = try!(self.get_ad_datas());
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:242:40
[INFO] [stdout]     |
[INFO] [stdout] 242 |         let (vendor_id_source,_,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:247:33
[INFO] [stdout]     |
[INFO] [stdout] 247 |         let (_,vendor_id,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:252:34
[INFO] [stdout]     |
[INFO] [stdout] 252 |         let (_,_,product_id,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:257:33
[INFO] [stdout]     |
[INFO] [stdout] 257 |         let (_,_,_,device_id) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `hex` is imported redundantly
[INFO] [stdout]  --> src/fake_device.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use hex;
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate hex;
[INFO] [stdout]   | ----------------- the item `hex` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:224:40
[INFO] [stdout]     |
[INFO] [stdout] 224 |         let (vendor_id_source,_,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:229:33
[INFO] [stdout]     |
[INFO] [stdout] 229 |         let (_,vendor_id,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:234:34
[INFO] [stdout]     |
[INFO] [stdout] 234 |         let (_,_,product_id,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:239:33
[INFO] [stdout]     |
[INFO] [stdout] 239 |         let (_,_,_,device_id) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:244:14
[INFO] [stdout]     |
[INFO] [stdout] 244 |         if !(try!(self.is_connected())) {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:257:14
[INFO] [stdout]     |
[INFO] [stdout] 257 |         if !(try!(self.is_connected())) {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:270:24
[INFO] [stdout]     |
[INFO] [stdout] 270 |         let services = try!(self.get_gatt_service_structs());
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:307:30
[INFO] [stdout]     |
[INFO] [stdout] 307 |         let is_connectable = try!(self.is_connectable());
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:308:28
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let is_connected = try!(self.is_connected());
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:320:28
[INFO] [stdout]     |
[INFO] [stdout] 320 |         let is_connected = try!(self.is_connected());
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/fake_service.rs:83:31
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let characteristics = try!(self.get_gatt_characteristic_structs());
[INFO] [stdout]    |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_characteristic.rs:101:27
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let descriptors = try!(self.get_gatt_descriptor_structs());
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:28:54
[INFO] [stdout]    |
[INFO] [stdout] 28 |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]    |                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_adapter.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     make_getter!(is_present);
[INFO] [stdout]    |     ------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 101 |     make_setter!(set_present, is_present, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:28:54
[INFO] [stdout]    |
[INFO] [stdout] 28 |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]    |                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_adapter.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     make_getter!(is_present);
[INFO] [stdout]    |     ------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:103:5
[INFO] [stdout]     |
[INFO] [stdout] 103 |     make_getter!(is_powered);
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 101 |     make_setter!(set_present, is_present, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout] 105 |     make_setter!(set_powered, is_powered, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:103:5
[INFO] [stdout]     |
[INFO] [stdout] 103 |     make_getter!(is_powered);
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     make_getter!(get_can_start_discovery, can_start_discovery, bool);
[INFO] [stdout]     |     ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout] 105 |     make_setter!(set_powered, is_powered, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     make_setter!(set_can_start_discovery, can_start_discovery, bool);
[INFO] [stdout]     |     ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     make_getter!(get_can_start_discovery, can_start_discovery, bool);
[INFO] [stdout]     |     ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:111:5
[INFO] [stdout]     |
[INFO] [stdout] 111 |     make_getter!(get_can_stop_discovery, can_stop_discovery, bool);
[INFO] [stdout]     |     -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     make_setter!(set_can_stop_discovery, can_stop_discovery, bool);
[INFO] [stdout]     |     -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     make_setter!(set_can_start_discovery, can_start_discovery, bool);
[INFO] [stdout]     |     ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:111:5
[INFO] [stdout]     |
[INFO] [stdout] 111 |     make_getter!(get_can_stop_discovery, can_stop_discovery, bool);
[INFO] [stdout]     |     -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 115 |     make_getter!(get_devices, devices, Vec<Arc<FakeBluetoothDevice>>);
[INFO] [stdout]     |     ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     make_setter!(set_can_stop_discovery, can_stop_discovery, bool);
[INFO] [stdout]     |     -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:117:5
[INFO] [stdout]     |
[INFO] [stdout] 117 |     make_getter!(get_ad_datas, ad_datas, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 115 |     make_getter!(get_devices, devices, Vec<Arc<FakeBluetoothDevice>>);
[INFO] [stdout]     |     ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 119 |     make_setter!(set_ad_datas, ad_datas, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:117:5
[INFO] [stdout]     |
[INFO] [stdout] 117 |     make_getter!(get_ad_datas, ad_datas, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:121:5
[INFO] [stdout]     |
[INFO] [stdout] 121 |     make_getter!(get_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 119 |     make_setter!(set_ad_datas, ad_datas, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     make_setter!(set_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:121:5
[INFO] [stdout]     |
[INFO] [stdout] 121 |     make_getter!(get_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     make_setter!(set_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     make_getter!(get_name, name, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     make_getter!(get_name, name, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     make_setter!(set_name, name, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     make_setter!(set_name, name, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     make_getter!(get_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     make_setter!(set_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     make_getter!(get_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     make_setter!(set_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     make_getter!(get_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     make_setter!(set_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     make_getter!(get_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 |     make_getter!(is_discoverable);
[INFO] [stdout]     |     ----------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     make_setter!(set_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:139:5
[INFO] [stdout]     |
[INFO] [stdout] 139 |     make_setter!(set_discoverable, is_discoverable, bool);
[INFO] [stdout]     |     ----------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:141:5
[INFO] [stdout]     |
[INFO] [stdout] 141 |     make_getter!(is_pairable);
[INFO] [stdout]     |     ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 |     make_getter!(is_discoverable);
[INFO] [stdout]     |     ----------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     make_setter!(set_pairable, is_pairable, bool);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:139:5
[INFO] [stdout]     |
[INFO] [stdout] 139 |     make_setter!(set_discoverable, is_discoverable, bool);
[INFO] [stdout]     |     ----------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 145 |     make_getter!(get_pairable_timeout, pairable_timeout, u32);
[INFO] [stdout]     |     --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:141:5
[INFO] [stdout]     |
[INFO] [stdout] 141 |     make_getter!(is_pairable);
[INFO] [stdout]     |     ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 147 |     make_setter!(set_pairable_timeout, pairable_timeout, u32);
[INFO] [stdout]     |     --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     make_setter!(set_pairable, is_pairable, bool);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:149:5
[INFO] [stdout]     |
[INFO] [stdout] 149 |     make_getter!(get_discoverable_timeout, discoverable_timeout, u32);
[INFO] [stdout]     |     ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 145 |     make_getter!(get_pairable_timeout, pairable_timeout, u32);
[INFO] [stdout]     |     --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 |     make_setter!(set_discoverable_timeout, discoverable_timeout, u32);
[INFO] [stdout]     |     ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 147 |     make_setter!(set_pairable_timeout, pairable_timeout, u32);
[INFO] [stdout]     |     --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     make_getter!(is_discovering);
[INFO] [stdout]     |     ---------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:149:5
[INFO] [stdout]     |
[INFO] [stdout] 149 |     make_getter!(get_discoverable_timeout, discoverable_timeout, u32);
[INFO] [stdout]     |     ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout] 155 |     make_setter!(set_discovering, is_discovering, bool);
[INFO] [stdout]     |     --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 |     make_setter!(set_discoverable_timeout, discoverable_timeout, u32);
[INFO] [stdout]     |     ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 |     make_getter!(get_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     make_getter!(is_discovering);
[INFO] [stdout]     |     ---------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 159 |     make_setter!(set_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout] 155 |     make_setter!(set_discovering, is_discovering, bool);
[INFO] [stdout]     |     --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:161:5
[INFO] [stdout]     |
[INFO] [stdout] 161 |     make_setter!(set_modalias, modalias, String);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 163 |     pub fn get_device(&self, id: String) -> Result<Arc<FakeBluetoothDevice>, Box<Error>> {
[INFO] [stdout]     |                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 163 |     pub fn get_device(&self, id: String) -> Result<Arc<FakeBluetoothDevice>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 |     make_getter!(get_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:174:62
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn get_device_list(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn get_device_list(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:184:76
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn get_first_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<Error>> {
[INFO] [stdout]     |                                                                            ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn get_first_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 159 |     make_setter!(set_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:192:82
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn add_device(&self, device: Arc<FakeBluetoothDevice>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn add_device(&self, device: Arc<FakeBluetoothDevice>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:201:63
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub fn remove_device(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub fn remove_device(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:210:59
[INFO] [stdout]     |
[INFO] [stdout] 210 |     pub fn get_first_ad_data(&self) -> Result<String, Box<Error>> {
[INFO] [stdout]     |                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 210 |     pub fn get_first_ad_data(&self) -> Result<String, Box<dyn Error>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:161:5
[INFO] [stdout]     |
[INFO] [stdout] 161 |     make_setter!(set_modalias, modalias, String);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:218:90
[INFO] [stdout]     |
[INFO] [stdout] 218 |      pub fn create_discovery_session(&self) -> Result<FakeBluetoothDiscoverySession, Box<Error>> {
[INFO] [stdout]     |                                                                                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 218 |      pub fn create_discovery_session(&self) -> Result<FakeBluetoothDiscoverySession, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 163 |     pub fn get_device(&self, id: String) -> Result<Arc<FakeBluetoothDevice>, Box<Error>> {
[INFO] [stdout]     |                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 163 |     pub fn get_device(&self, id: String) -> Result<Arc<FakeBluetoothDevice>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:222:72
[INFO] [stdout]     |
[INFO] [stdout] 222 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<Error>> {
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 222 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<dyn Error>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:174:62
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn get_device_list(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn get_device_list(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:241:62
[INFO] [stdout]     |
[INFO] [stdout] 241 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<Error>> {
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 241 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<dyn Error>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:184:76
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn get_first_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<Error>> {
[INFO] [stdout]     |                                                                            ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn get_first_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:246:52
[INFO] [stdout]     |
[INFO] [stdout] 246 |     pub fn get_vendor_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 246 |     pub fn get_vendor_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:192:82
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn add_device(&self, device: Arc<FakeBluetoothDevice>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn add_device(&self, device: Arc<FakeBluetoothDevice>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:251:53
[INFO] [stdout]     |
[INFO] [stdout] 251 |     pub fn get_product_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 251 |     pub fn get_product_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:201:63
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub fn remove_device(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub fn remove_device(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:256:52
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_device_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_device_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:210:59
[INFO] [stdout]     |
[INFO] [stdout] 210 |     pub fn get_first_ad_data(&self) -> Result<String, Box<Error>> {
[INFO] [stdout]     |                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 210 |     pub fn get_first_ad_data(&self) -> Result<String, Box<dyn Error>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:218:90
[INFO] [stdout]     |
[INFO] [stdout] 218 |      pub fn create_discovery_session(&self) -> Result<FakeBluetoothDiscoverySession, Box<Error>> {
[INFO] [stdout]     |                                                                                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 218 |      pub fn create_discovery_session(&self) -> Result<FakeBluetoothDiscoverySession, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     make_getter!(get_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:222:72
[INFO] [stdout]     |
[INFO] [stdout] 222 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<Error>> {
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 222 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<dyn Error>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:241:62
[INFO] [stdout]     |
[INFO] [stdout] 241 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<Error>> {
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 241 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<dyn Error>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     make_setter!(set_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:246:52
[INFO] [stdout]     |
[INFO] [stdout] 246 |     pub fn get_vendor_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 246 |     pub fn get_vendor_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:251:53
[INFO] [stdout]     |
[INFO] [stdout] 251 |     pub fn get_product_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 251 |     pub fn get_product_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     make_option_getter!(get_name, name, String);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:256:52
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_device_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_device_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     make_setter!(set_name, name, Option<String>);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     make_getter!(get_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     make_getter!(get_icon, icon, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     make_setter!(set_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:132:5
[INFO] [stdout]     |
[INFO] [stdout] 132 |     make_setter!(set_icon, icon, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     make_option_getter!(get_name, name, String);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:134:5
[INFO] [stdout]     |
[INFO] [stdout] 134 |     make_getter!(get_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     make_setter!(set_name, name, Option<String>);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     make_setter!(set_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     make_getter!(get_icon, icon, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 138 |     make_option_getter!(get_appearance, appearance, u16);
[INFO] [stdout]     |     ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:132:5
[INFO] [stdout]     |
[INFO] [stdout] 132 |     make_setter!(set_icon, icon, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 140 |     make_setter!(set_appearance, appearance, Option<u16>);
[INFO] [stdout]     |     ----------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:134:5
[INFO] [stdout]     |
[INFO] [stdout] 134 |     make_getter!(get_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     make_getter!(get_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     make_setter!(set_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:144:5
[INFO] [stdout]     |
[INFO] [stdout] 144 |     make_setter!(set_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 138 |     make_option_getter!(get_appearance, appearance, u16);
[INFO] [stdout]     |     ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:146:5
[INFO] [stdout]     |
[INFO] [stdout] 146 |     make_getter!(is_paired);
[INFO] [stdout]     |     ----------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 140 |     make_setter!(set_appearance, appearance, Option<u16>);
[INFO] [stdout]     |     ----------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:148:5
[INFO] [stdout]     |
[INFO] [stdout] 148 |     make_setter!(set_paired, is_paired, bool);
[INFO] [stdout]     |     ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     make_getter!(get_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 150 |     make_getter!(is_connectable);
[INFO] [stdout]     |     ---------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:144:5
[INFO] [stdout]     |
[INFO] [stdout] 144 |     make_setter!(set_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     make_setter!(set_connectable, is_connectable, bool);
[INFO] [stdout]     |     --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:154:5
[INFO] [stdout]     |
[INFO] [stdout] 154 |     make_getter!(is_connected);
[INFO] [stdout]     |     -------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:146:5
[INFO] [stdout]     |
[INFO] [stdout] 146 |     make_getter!(is_paired);
[INFO] [stdout]     |     ----------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:148:5
[INFO] [stdout]     |
[INFO] [stdout] 148 |     make_setter!(set_paired, is_paired, bool);
[INFO] [stdout]     |     ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:156:5
[INFO] [stdout]     |
[INFO] [stdout] 156 |     make_setter!(set_connected, is_connected, bool);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 150 |     make_getter!(is_connectable);
[INFO] [stdout]     |     ---------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     make_getter!(is_trusted);
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     make_setter!(set_connectable, is_connectable, bool);
[INFO] [stdout]     |     --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     make_setter!(set_trusted, is_trusted, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:154:5
[INFO] [stdout]     |
[INFO] [stdout] 154 |     make_getter!(is_connected);
[INFO] [stdout]     |     -------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 162 |     make_getter!(is_blocked);
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:156:5
[INFO] [stdout]     |
[INFO] [stdout] 156 |     make_setter!(set_connected, is_connected, bool);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     make_setter!(set_blocked, is_blocked, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     make_getter!(is_trusted);
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     make_getter!(get_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     make_setter!(set_trusted, is_trusted, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     make_setter!(set_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 162 |     make_getter!(is_blocked);
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 |     make_getter!(is_legacy_pairing);
[INFO] [stdout]     |     ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     make_setter!(set_blocked, is_blocked, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:172:5
[INFO] [stdout]     |
[INFO] [stdout] 172 |     make_setter!(set_legacy_pairing, is_legacy_pairing, bool);
[INFO] [stdout]     |     --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     make_getter!(get_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |     make_setter!(set_modalias, modalias, String);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     make_setter!(set_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     make_option_getter!(get_rssi, rssi, i16);
[INFO] [stdout]     |     ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 |     make_getter!(is_legacy_pairing);
[INFO] [stdout]     |     ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:178:5
[INFO] [stdout]     |
[INFO] [stdout] 178 |     make_setter!(set_rssi, rssi, Option<i16>);
[INFO] [stdout]     |     ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:172:5
[INFO] [stdout]     |
[INFO] [stdout] 172 |     make_setter!(set_legacy_pairing, is_legacy_pairing, bool);
[INFO] [stdout]     |     --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 180 |     make_option_getter!(get_tx_power, tx_power, i16);
[INFO] [stdout]     |     ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |     make_setter!(set_modalias, modalias, String);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     make_setter!(set_tx_power, tx_power, Option<i16>);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     make_option_getter!(get_rssi, rssi, i16);
[INFO] [stdout]     |     ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:184:5
[INFO] [stdout]     |
[INFO] [stdout] 184 |     make_option_getter!(get_manufacturer_data, manufacturer_data, HashMap<u16, Vec<u8>>);
[INFO] [stdout]     |     ------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:178:5
[INFO] [stdout]     |
[INFO] [stdout] 178 |     make_setter!(set_rssi, rssi, Option<i16>);
[INFO] [stdout]     |     ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:186:5
[INFO] [stdout]     |
[INFO] [stdout] 186 |     make_setter!(set_manufacturer_data, manufacturer_data, Option<HashMap<u16, Vec<u8>>>);
[INFO] [stdout]     |     ------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 180 |     make_option_getter!(get_tx_power, tx_power, i16);
[INFO] [stdout]     |     ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     make_option_getter!(get_service_data, service_data, HashMap<String, Vec<u8>>);
[INFO] [stdout]     |     ----------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     make_setter!(set_tx_power, tx_power, Option<i16>);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 |     make_setter!(set_service_data, service_data, Option<HashMap<String, Vec<u8>>>);
[INFO] [stdout]     |     ------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:184:5
[INFO] [stdout]     |
[INFO] [stdout] 184 |     make_option_getter!(get_manufacturer_data, manufacturer_data, HashMap<u16, Vec<u8>>);
[INFO] [stdout]     |     ------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:192:72
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn get_adapter(&self) -> Result<Arc<FakeBluetoothAdapter>, Box<Error>> {
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn get_adapter(&self) -> Result<Arc<FakeBluetoothAdapter>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:196:42
[INFO] [stdout]     |
[INFO] [stdout] 196 |     pub fn pair(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 196 |     pub fn pair(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:186:5
[INFO] [stdout]     |
[INFO] [stdout] 186 |     make_setter!(set_manufacturer_data, manufacturer_data, Option<HashMap<u16, Vec<u8>>>);
[INFO] [stdout]     |     ------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:200:52
[INFO] [stdout]     |
[INFO] [stdout] 200 |     pub fn cancel_pairing(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 200 |     pub fn cancel_pairing(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     make_option_getter!(get_service_data, service_data, HashMap<String, Vec<u8>>);
[INFO] [stdout]     |     ----------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:204:72
[INFO] [stdout]     |
[INFO] [stdout] 204 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<Error>> {
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 204 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<dyn Error>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:223:62
[INFO] [stdout]     |
[INFO] [stdout] 223 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<Error>> {
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 223 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<dyn Error>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:228:52
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn get_vendor_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn get_vendor_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 |     make_setter!(set_service_data, service_data, Option<HashMap<String, Vec<u8>>>);
[INFO] [stdout]     |     ------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:192:72
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn get_adapter(&self) -> Result<Arc<FakeBluetoothAdapter>, Box<Error>> {
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn get_adapter(&self) -> Result<Arc<FakeBluetoothAdapter>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:233:53
[INFO] [stdout]     |
[INFO] [stdout] 233 |     pub fn get_product_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 233 |     pub fn get_product_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:196:42
[INFO] [stdout]     |
[INFO] [stdout] 196 |     pub fn pair(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 196 |     pub fn pair(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:238:52
[INFO] [stdout]     |
[INFO] [stdout] 238 |     pub fn get_device_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 238 |     pub fn get_device_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:200:52
[INFO] [stdout]     |
[INFO] [stdout] 200 |     pub fn cancel_pairing(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 200 |     pub fn cancel_pairing(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:243:64
[INFO] [stdout]     |
[INFO] [stdout] 243 |     pub fn get_gatt_services(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 243 |     pub fn get_gatt_services(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:204:72
[INFO] [stdout]     |
[INFO] [stdout] 204 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<Error>> {
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 204 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<dyn Error>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:256:94
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_gatt_service_structs(&self) -> Result<Vec<Arc<FakeBluetoothGATTService>>, Box<Error>> {
[INFO] [stdout]     |                                                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_gatt_service_structs(&self) -> Result<Vec<Arc<FakeBluetoothGATTService>>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:223:62
[INFO] [stdout]     |
[INFO] [stdout] 223 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<Error>> {
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 223 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<dyn Error>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:269:93
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub fn get_gatt_service(&self, id: String) -> Result<Arc<FakeBluetoothGATTService>, Box<Error>> {
[INFO] [stdout]     |                                                                                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub fn get_gatt_service(&self, id: String) -> Result<Arc<FakeBluetoothGATTService>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:228:52
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn get_vendor_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn get_vendor_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:280:89
[INFO] [stdout]     |
[INFO] [stdout] 280 |     pub fn add_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 280 |     pub fn add_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:233:53
[INFO] [stdout]     |
[INFO] [stdout] 233 |     pub fn get_product_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 233 |     pub fn get_product_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:289:64
[INFO] [stdout]     |
[INFO] [stdout] 289 |     pub fn remove_service(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 289 |     pub fn remove_service(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:238:52
[INFO] [stdout]     |
[INFO] [stdout] 238 |     pub fn get_device_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 238 |     pub fn get_device_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:298:68
[INFO] [stdout]     |
[INFO] [stdout] 298 |     pub fn connect_profile(&self, _uuid: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 298 |     pub fn connect_profile(&self, _uuid: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:243:64
[INFO] [stdout]     |
[INFO] [stdout] 243 |     pub fn get_gatt_services(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 243 |     pub fn get_gatt_services(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:302:71
[INFO] [stdout]     |
[INFO] [stdout] 302 |     pub fn disconnect_profile(&self, _uuid: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 302 |     pub fn disconnect_profile(&self, _uuid: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:256:94
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_gatt_service_structs(&self) -> Result<Vec<Arc<FakeBluetoothGATTService>>, Box<Error>> {
[INFO] [stdout]     |                                                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_gatt_service_structs(&self) -> Result<Vec<Arc<FakeBluetoothGATTService>>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:306:45
[INFO] [stdout]     |
[INFO] [stdout] 306 |     pub fn connect(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 306 |     pub fn connect(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:269:93
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub fn get_gatt_service(&self, id: String) -> Result<Arc<FakeBluetoothGATTService>, Box<Error>> {
[INFO] [stdout]     |                                                                                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub fn get_gatt_service(&self, id: String) -> Result<Arc<FakeBluetoothGATTService>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:319:48
[INFO] [stdout]     |
[INFO] [stdout] 319 |     pub fn disconnect(&self) -> Result<(), Box<Error>>{
[INFO] [stdout]     |                                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 319 |     pub fn disconnect(&self) -> Result<(), Box<dyn Error>>{
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:280:89
[INFO] [stdout]     |
[INFO] [stdout] 280 |     pub fn add_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 280 |     pub fn add_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:289:64
[INFO] [stdout]     |
[INFO] [stdout] 289 |     pub fn remove_service(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 289 |     pub fn remove_service(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     make_getter!(get_gatt_characteristic_structs, gatt_characteristics, Vec<Arc<FakeBluetoothGATTCharacteristic>>);
[INFO] [stdout]    |     -------------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:298:68
[INFO] [stdout]     |
[INFO] [stdout] 298 |     pub fn connect_profile(&self, _uuid: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 298 |     pub fn connect_profile(&self, _uuid: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:302:71
[INFO] [stdout]     |
[INFO] [stdout] 302 |     pub fn disconnect_profile(&self, _uuid: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 302 |     pub fn disconnect_profile(&self, _uuid: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:28:54
[INFO] [stdout]    |
[INFO] [stdout] 28 |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]    |                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     make_getter!(is_primary);
[INFO] [stdout]    |     ------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:306:45
[INFO] [stdout]     |
[INFO] [stdout] 306 |     pub fn connect(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 306 |     pub fn connect(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     make_setter!(set_is_primary, is_primary, bool);
[INFO] [stdout]    |     ---------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:319:48
[INFO] [stdout]     |
[INFO] [stdout] 319 |     pub fn disconnect(&self) -> Result<(), Box<Error>>{
[INFO] [stdout]     |                                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 319 |     pub fn disconnect(&self) -> Result<(), Box<dyn Error>>{
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     make_setter!(set_includes, included_services, Vec<Arc<FakeBluetoothGATTService>>);
[INFO] [stdout]    |     --------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     make_getter!(get_gatt_characteristic_structs, gatt_characteristics, Vec<Arc<FakeBluetoothGATTCharacteristic>>);
[INFO] [stdout]    |     -------------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     make_getter!(get_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:28:54
[INFO] [stdout]    |
[INFO] [stdout] 28 |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]    |                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     make_getter!(is_primary);
[INFO] [stdout]    |     ------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     make_setter!(set_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     make_setter!(set_is_primary, is_primary, bool);
[INFO] [stdout]    |     ---------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:69:70
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn get_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<Error>> {
[INFO] [stdout]    |                                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn get_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     make_setter!(set_includes, included_services, Vec<Arc<FakeBluetoothGATTService>>);
[INFO] [stdout]    |     --------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:73:71
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn get_gatt_characteristics(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]    |                                                                       ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn get_gatt_characteristics(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:82:107
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn get_gatt_characteristic(&self, id: String) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<Error>> {
[INFO] [stdout]    |                                                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn get_gatt_characteristic(&self, id: String) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     make_getter!(get_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:93:110
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn add_characteristic(&self, characteristic: Arc<FakeBluetoothGATTCharacteristic>) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                                                              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn add_characteristic(&self, characteristic: Arc<FakeBluetoothGATTCharacteristic>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:102:71
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn remove_characteristic(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn remove_characteristic(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     make_setter!(set_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:111:98
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_included_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_included_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:69:70
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn get_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<Error>> {
[INFO] [stdout]    |                                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn get_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:120:73
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_included_service(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_included_service(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:73:71
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn get_gatt_characteristics(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]    |                                                                       ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn get_gatt_characteristics(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:129:59
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn get_includes(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]     |                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn get_includes(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:82:107
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn get_gatt_characteristic(&self, id: String) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<Error>> {
[INFO] [stdout]    |                                                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn get_gatt_characteristic(&self, id: String) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:93:110
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn add_characteristic(&self, characteristic: Arc<FakeBluetoothGATTCharacteristic>) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                                                              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn add_characteristic(&self, characteristic: Arc<FakeBluetoothGATTCharacteristic>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     make_getter!(get_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:102:71
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn remove_characteristic(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn remove_characteristic(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     make_setter!(set_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:111:98
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_included_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_included_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:41:63
[INFO] [stdout]    |
[INFO] [stdout] 41 |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     make_option_getter!(get_value, value, Vec<u8>);
[INFO] [stdout]    |     ---------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:120:73
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_included_service(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_included_service(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:129:59
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn get_includes(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]     |                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn get_includes(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     make_setter!(set_value, value, Option<Vec<u8>>);
[INFO] [stdout]    |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     make_getter!(get_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:28:54
[INFO] [stdout]    |
[INFO] [stdout] 28 |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]    |                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     make_getter!(is_notifying);
[INFO] [stdout]    |     -------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     make_setter!(set_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 |     make_setter!(set_notifying, is_notifying, bool);
[INFO] [stdout]    |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:41:63
[INFO] [stdout]    |
[INFO] [stdout] 41 |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     make_option_getter!(get_value, value, Vec<u8>);
[INFO] [stdout]    |     ---------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     make_setter!(set_value, value, Option<Vec<u8>>);
[INFO] [stdout]    |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 73 |     make_getter!(get_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     make_setter!(set_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:28:54
[INFO] [stdout]    |
[INFO] [stdout] 28 |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]    |                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     make_getter!(is_notifying);
[INFO] [stdout]    |     -------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 |     make_setter!(set_notifying, is_notifying, bool);
[INFO] [stdout]    |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 77 |     make_getter!(get_gatt_descriptor_structs, gatt_descriptors, Vec<Arc<FakeBluetoothGATTDescriptor>>);
[INFO] [stdout]    |     -------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:79:76
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn get_service(&self) -> Result<Arc<FakeBluetoothGATTService>, Box<Error>> {
[INFO] [stdout]    |                                                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn get_service(&self) -> Result<Arc<FakeBluetoothGATTService>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 73 |     make_getter!(get_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:83:50
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn start_notify(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn start_notify(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:87:49
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn stop_notify(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn stop_notify(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     make_setter!(set_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:91:67
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn get_gatt_descriptors(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]    |                                                                   ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn get_gatt_descriptors(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:100:99
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn get_gatt_descriptor(&self, id: String) -> Result<Arc<FakeBluetoothGATTDescriptor>, Box<Error>> {
[INFO] [stdout]     |                                                                                                   ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn get_gatt_descriptor(&self, id: String) -> Result<Arc<FakeBluetoothGATTDescriptor>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:111:98
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_descriptor(&self, descriptor: Arc<FakeBluetoothGATTDescriptor>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_descriptor(&self, descriptor: Arc<FakeBluetoothGATTDescriptor>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 77 |     make_getter!(get_gatt_descriptor_structs, gatt_descriptors, Vec<Arc<FakeBluetoothGATTDescriptor>>);
[INFO] [stdout]    |     -------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:120:67
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_descriptor(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                   ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_descriptor(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:79:76
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn get_service(&self) -> Result<Arc<FakeBluetoothGATTService>, Box<Error>> {
[INFO] [stdout]    |                                                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn get_service(&self) -> Result<Arc<FakeBluetoothGATTService>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:129:53
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<Error>> {
[INFO] [stdout]     |                                                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:83:50
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn start_notify(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn start_notify(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:133:65
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:87:49
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn stop_notify(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn stop_notify(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:91:67
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn get_gatt_descriptors(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]    |                                                                   ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn get_gatt_descriptors(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     make_getter!(get_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:100:99
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn get_gatt_descriptor(&self, id: String) -> Result<Arc<FakeBluetoothGATTDescriptor>, Box<Error>> {
[INFO] [stdout]     |                                                                                                   ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn get_gatt_descriptor(&self, id: String) -> Result<Arc<FakeBluetoothGATTDescriptor>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:111:98
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_descriptor(&self, descriptor: Arc<FakeBluetoothGATTDescriptor>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_descriptor(&self, descriptor: Arc<FakeBluetoothGATTDescriptor>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     make_setter!(set_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:120:67
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_descriptor(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                   ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_descriptor(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:129:53
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<Error>> {
[INFO] [stdout]     |                                                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:41:63
[INFO] [stdout]    |
[INFO] [stdout] 41 |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     make_option_getter!(get_value, value, Vec<u8>);
[INFO] [stdout]    |     ---------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:133:65
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     make_setter!(set_value, value, Option<Vec<u8>>);
[INFO] [stdout]    |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     make_getter!(get_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     make_getter!(get_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     make_setter!(set_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     make_setter!(set_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_descriptor.rs:64:90
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn get_characteristic(&self) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<Error>> {
[INFO] [stdout]    |                                                                                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn get_characteristic(&self) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:41:63
[INFO] [stdout]    |
[INFO] [stdout] 41 |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     make_option_getter!(get_value, value, Vec<u8>);
[INFO] [stdout]    |     ---------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_descriptor.rs:68:53
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<Error>> {
[INFO] [stdout]    |                                                     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]    |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     make_setter!(set_value, value, Option<Vec<u8>>);
[INFO] [stdout]    |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_descriptor.rs:72:65
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_discovery_session.rs:11:108
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn create_session(adapter: Arc<FakeBluetoothAdapter>) -> Result<FakeBluetoothDiscoverySession, Box<Error>> {
[INFO] [stdout]    |                                                                                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn create_session(adapter: Arc<FakeBluetoothAdapter>) -> Result<FakeBluetoothDiscoverySession, Box<dyn Error>> {
[INFO] [stdout]    |                                                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_discovery_session.rs:25:53
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn start_discovery(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn start_discovery(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     make_getter!(get_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_discovery_session.rs:33:52
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn stop_discovery(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn stop_discovery(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     make_setter!(set_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_descriptor.rs:64:90
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn get_characteristic(&self) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<Error>> {
[INFO] [stdout]    |                                                                                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn get_characteristic(&self) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_descriptor.rs:68:53
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<Error>> {
[INFO] [stdout]    |                                                     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]    |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_descriptor.rs:72:65
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_discovery_session.rs:11:108
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn create_session(adapter: Arc<FakeBluetoothAdapter>) -> Result<FakeBluetoothDiscoverySession, Box<Error>> {
[INFO] [stdout]    |                                                                                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn create_session(adapter: Arc<FakeBluetoothAdapter>) -> Result<FakeBluetoothDiscoverySession, Box<dyn Error>> {
[INFO] [stdout]    |                                                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_discovery_session.rs:25:53
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn start_discovery(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn start_discovery(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_discovery_session.rs:33:52
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn stop_discovery(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn stop_discovery(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `product_version` is never read
[INFO] [stdout]   --> src/fake_device.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct FakeBluetoothDevice {
[INFO] [stdout]    |            ------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     product_version: Arc<Mutex<u32>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FakeBluetoothDevice` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 163 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `product_version` is never read
[INFO] [stdout]   --> src/fake_device.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct FakeBluetoothDevice {
[INFO] [stdout]    |            ------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     product_version: Arc<Mutex<u32>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FakeBluetoothDevice` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 163 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.49s
[INFO] running `Command { std: "docker" "inspect" "1e8dd8f2dd11c7c308c526440271243ed57511b917002fd88ca30bb63ae06d48", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1e8dd8f2dd11c7c308c526440271243ed57511b917002fd88ca30bb63ae06d48", kill_on_drop: false }`
[INFO] [stdout] 1e8dd8f2dd11c7c308c526440271243ed57511b917002fd88ca30bb63ae06d48
[INFO] checking blurmock-0.1.3 against try#bfe97fcae016881ad333f0ff8cea2cadb9cf136c for pr-121848
[INFO] extracting crate blurmock 0.1.3 into /workspace/builds/worker-1-tc2/source
[INFO] validating manifest of crates.io crate blurmock 0.1.3 on toolchain bfe97fcae016881ad333f0ff8cea2cadb9cf136c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate blurmock 0.1.3
[INFO] finished tweaking crates.io crate blurmock 0.1.3
[INFO] tweaked toml for crates.io crate blurmock 0.1.3 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 4bc80b7fe48f044f07ecfd79e6cedb3e3de5e77f35042c35841e90744e640ffc
[INFO] running `Command { std: "docker" "start" "-a" "4bc80b7fe48f044f07ecfd79e6cedb3e3de5e77f35042c35841e90744e640ffc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4bc80b7fe48f044f07ecfd79e6cedb3e3de5e77f35042c35841e90744e640ffc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4bc80b7fe48f044f07ecfd79e6cedb3e3de5e77f35042c35841e90744e640ffc", kill_on_drop: false }`
[INFO] [stdout] 4bc80b7fe48f044f07ecfd79e6cedb3e3de5e77f35042c35841e90744e640ffc
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 960e8226ee3426b602e28abaf9b9ab4ad6b0b8a3c91bb0df24185e5446b9f14b
[INFO] running `Command { std: "docker" "start" "-a" "960e8226ee3426b602e28abaf9b9ab4ad6b0b8a3c91bb0df24185e5446b9f14b", kill_on_drop: false }`
[INFO] [stderr]     Checking hex v0.3.2
[INFO] [stderr]     Checking blurmock v0.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the item `hex` is imported redundantly
[INFO] [stdout]  --> src/fake_adapter.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use hex;
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate hex;
[INFO] [stdout]   | ----------------- the item `hex` is already imported here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:164:23
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let devices = try!(self.get_devices());
[INFO] [stdout]     |                       ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:175:23
[INFO] [stdout]     |
[INFO] [stdout] 175 |         let devices = try!(self.get_devices());
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:185:23
[INFO] [stdout]     |
[INFO] [stdout] 185 |         let devices = try!(self.get_devices());
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:211:24
[INFO] [stdout]     |
[INFO] [stdout] 211 |         let ad_datas = try!(self.get_ad_datas());
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:242:40
[INFO] [stdout]     |
[INFO] [stdout] 242 |         let (vendor_id_source,_,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:247:33
[INFO] [stdout]     |
[INFO] [stdout] 247 |         let (_,vendor_id,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:252:34
[INFO] [stdout]     |
[INFO] [stdout] 252 |         let (_,_,product_id,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:257:33
[INFO] [stdout]     |
[INFO] [stdout] 257 |         let (_,_,_,device_id) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `hex` is imported redundantly
[INFO] [stdout]  --> src/fake_adapter.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use hex;
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate hex;
[INFO] [stdout]   | ----------------- the item `hex` is already imported here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `hex` is imported redundantly
[INFO] [stdout]  --> src/fake_device.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use hex;
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate hex;
[INFO] [stdout]   | ----------------- the item `hex` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:224:40
[INFO] [stdout]     |
[INFO] [stdout] 224 |         let (vendor_id_source,_,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:229:33
[INFO] [stdout]     |
[INFO] [stdout] 229 |         let (_,vendor_id,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:164:23
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let devices = try!(self.get_devices());
[INFO] [stdout]     |                       ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:234:34
[INFO] [stdout]     |
[INFO] [stdout] 234 |         let (_,_,product_id,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:239:33
[INFO] [stdout]     |
[INFO] [stdout] 239 |         let (_,_,_,device_id) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:175:23
[INFO] [stdout]     |
[INFO] [stdout] 175 |         let devices = try!(self.get_devices());
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:185:23
[INFO] [stdout]     |
[INFO] [stdout] 185 |         let devices = try!(self.get_devices());
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:244:14
[INFO] [stdout]     |
[INFO] [stdout] 244 |         if !(try!(self.is_connected())) {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:211:24
[INFO] [stdout]     |
[INFO] [stdout] 211 |         let ad_datas = try!(self.get_ad_datas());
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:242:40
[INFO] [stdout]     |
[INFO] [stdout] 242 |         let (vendor_id_source,_,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:257:14
[INFO] [stdout]     |
[INFO] [stdout] 257 |         if !(try!(self.is_connected())) {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:270:24
[INFO] [stdout]     |
[INFO] [stdout] 270 |         let services = try!(self.get_gatt_service_structs());
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:247:33
[INFO] [stdout]     |
[INFO] [stdout] 247 |         let (_,vendor_id,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:307:30
[INFO] [stdout]     |
[INFO] [stdout] 307 |         let is_connectable = try!(self.is_connectable());
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:252:34
[INFO] [stdout]     |
[INFO] [stdout] 252 |         let (_,_,product_id,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_adapter.rs:257:33
[INFO] [stdout]     |
[INFO] [stdout] 257 |         let (_,_,_,device_id) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:308:28
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let is_connected = try!(self.is_connected());
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:320:28
[INFO] [stdout]     |
[INFO] [stdout] 320 |         let is_connected = try!(self.is_connected());
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `hex` is imported redundantly
[INFO] [stdout]  --> src/fake_device.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use hex;
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate hex;
[INFO] [stdout]   | ----------------- the item `hex` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/fake_service.rs:83:31
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let characteristics = try!(self.get_gatt_characteristic_structs());
[INFO] [stdout]    |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:224:40
[INFO] [stdout]     |
[INFO] [stdout] 224 |         let (vendor_id_source,_,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_characteristic.rs:101:27
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let descriptors = try!(self.get_gatt_descriptor_structs());
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:229:33
[INFO] [stdout]     |
[INFO] [stdout] 229 |         let (_,vendor_id,_,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:234:34
[INFO] [stdout]     |
[INFO] [stdout] 234 |         let (_,_,product_id,_) = try!(self.get_modalias());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:239:33
[INFO] [stdout]     |
[INFO] [stdout] 239 |         let (_,_,_,device_id) = try!(self.get_modalias());
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:244:14
[INFO] [stdout]     |
[INFO] [stdout] 244 |         if !(try!(self.is_connected())) {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:257:14
[INFO] [stdout]     |
[INFO] [stdout] 257 |         if !(try!(self.is_connected())) {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:270:24
[INFO] [stdout]     |
[INFO] [stdout] 270 |         let services = try!(self.get_gatt_service_structs());
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:307:30
[INFO] [stdout]     |
[INFO] [stdout] 307 |         let is_connectable = try!(self.is_connectable());
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:308:28
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let is_connected = try!(self.is_connected());
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_device.rs:320:28
[INFO] [stdout]     |
[INFO] [stdout] 320 |         let is_connected = try!(self.is_connected());
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/fake_service.rs:83:31
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let characteristics = try!(self.get_gatt_characteristic_structs());
[INFO] [stdout]    |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fake_characteristic.rs:101:27
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let descriptors = try!(self.get_gatt_descriptor_structs());
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:28:54
[INFO] [stdout]    |
[INFO] [stdout] 28 |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]    |                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_adapter.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     make_getter!(is_present);
[INFO] [stdout]    |     ------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 101 |     make_setter!(set_present, is_present, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:103:5
[INFO] [stdout]     |
[INFO] [stdout] 103 |     make_getter!(is_powered);
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout] 105 |     make_setter!(set_powered, is_powered, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     make_getter!(get_can_start_discovery, can_start_discovery, bool);
[INFO] [stdout]     |     ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     make_setter!(set_can_start_discovery, can_start_discovery, bool);
[INFO] [stdout]     |     ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:111:5
[INFO] [stdout]     |
[INFO] [stdout] 111 |     make_getter!(get_can_stop_discovery, can_stop_discovery, bool);
[INFO] [stdout]     |     -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     make_setter!(set_can_stop_discovery, can_stop_discovery, bool);
[INFO] [stdout]     |     -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 115 |     make_getter!(get_devices, devices, Vec<Arc<FakeBluetoothDevice>>);
[INFO] [stdout]     |     ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:117:5
[INFO] [stdout]     |
[INFO] [stdout] 117 |     make_getter!(get_ad_datas, ad_datas, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 119 |     make_setter!(set_ad_datas, ad_datas, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:121:5
[INFO] [stdout]     |
[INFO] [stdout] 121 |     make_getter!(get_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     make_setter!(set_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:28:54
[INFO] [stdout]    |
[INFO] [stdout] 28 |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]    |                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_adapter.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     make_getter!(is_present);
[INFO] [stdout]    |     ------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     make_getter!(get_name, name, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     make_setter!(set_name, name, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 101 |     make_setter!(set_present, is_present, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     make_getter!(get_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:103:5
[INFO] [stdout]     |
[INFO] [stdout] 103 |     make_getter!(is_powered);
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     make_setter!(set_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     make_getter!(get_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout] 105 |     make_setter!(set_powered, is_powered, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     make_setter!(set_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     make_getter!(get_can_start_discovery, can_start_discovery, bool);
[INFO] [stdout]     |     ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 |     make_getter!(is_discoverable);
[INFO] [stdout]     |     ----------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     make_setter!(set_can_start_discovery, can_start_discovery, bool);
[INFO] [stdout]     |     ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:139:5
[INFO] [stdout]     |
[INFO] [stdout] 139 |     make_setter!(set_discoverable, is_discoverable, bool);
[INFO] [stdout]     |     ----------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:141:5
[INFO] [stdout]     |
[INFO] [stdout] 141 |     make_getter!(is_pairable);
[INFO] [stdout]     |     ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:111:5
[INFO] [stdout]     |
[INFO] [stdout] 111 |     make_getter!(get_can_stop_discovery, can_stop_discovery, bool);
[INFO] [stdout]     |     -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     make_setter!(set_pairable, is_pairable, bool);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     make_setter!(set_can_stop_discovery, can_stop_discovery, bool);
[INFO] [stdout]     |     -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 145 |     make_getter!(get_pairable_timeout, pairable_timeout, u32);
[INFO] [stdout]     |     --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 115 |     make_getter!(get_devices, devices, Vec<Arc<FakeBluetoothDevice>>);
[INFO] [stdout]     |     ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 147 |     make_setter!(set_pairable_timeout, pairable_timeout, u32);
[INFO] [stdout]     |     --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:117:5
[INFO] [stdout]     |
[INFO] [stdout] 117 |     make_getter!(get_ad_datas, ad_datas, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:149:5
[INFO] [stdout]     |
[INFO] [stdout] 149 |     make_getter!(get_discoverable_timeout, discoverable_timeout, u32);
[INFO] [stdout]     |     ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 119 |     make_setter!(set_ad_datas, ad_datas, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 |     make_setter!(set_discoverable_timeout, discoverable_timeout, u32);
[INFO] [stdout]     |     ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:121:5
[INFO] [stdout]     |
[INFO] [stdout] 121 |     make_getter!(get_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     make_getter!(is_discovering);
[INFO] [stdout]     |     ---------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     make_setter!(set_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout] 155 |     make_setter!(set_discovering, is_discovering, bool);
[INFO] [stdout]     |     --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     make_getter!(get_name, name, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 |     make_getter!(get_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 159 |     make_setter!(set_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     make_setter!(set_name, name, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:161:5
[INFO] [stdout]     |
[INFO] [stdout] 161 |     make_setter!(set_modalias, modalias, String);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     make_getter!(get_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 163 |     pub fn get_device(&self, id: String) -> Result<Arc<FakeBluetoothDevice>, Box<Error>> {
[INFO] [stdout]     |                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 163 |     pub fn get_device(&self, id: String) -> Result<Arc<FakeBluetoothDevice>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:174:62
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn get_device_list(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn get_device_list(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     make_setter!(set_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:184:76
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn get_first_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<Error>> {
[INFO] [stdout]     |                                                                            ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn get_first_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:192:82
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn add_device(&self, device: Arc<FakeBluetoothDevice>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn add_device(&self, device: Arc<FakeBluetoothDevice>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     make_getter!(get_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:201:63
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub fn remove_device(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub fn remove_device(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:210:59
[INFO] [stdout]     |
[INFO] [stdout] 210 |     pub fn get_first_ad_data(&self) -> Result<String, Box<Error>> {
[INFO] [stdout]     |                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 210 |     pub fn get_first_ad_data(&self) -> Result<String, Box<dyn Error>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     make_setter!(set_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:218:90
[INFO] [stdout]     |
[INFO] [stdout] 218 |      pub fn create_discovery_session(&self) -> Result<FakeBluetoothDiscoverySession, Box<Error>> {
[INFO] [stdout]     |                                                                                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 218 |      pub fn create_discovery_session(&self) -> Result<FakeBluetoothDiscoverySession, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:222:72
[INFO] [stdout]     |
[INFO] [stdout] 222 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<Error>> {
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 222 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<dyn Error>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 |     make_getter!(is_discoverable);
[INFO] [stdout]     |     ----------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:241:62
[INFO] [stdout]     |
[INFO] [stdout] 241 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<Error>> {
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 241 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<dyn Error>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:246:52
[INFO] [stdout]     |
[INFO] [stdout] 246 |     pub fn get_vendor_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 246 |     pub fn get_vendor_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:139:5
[INFO] [stdout]     |
[INFO] [stdout] 139 |     make_setter!(set_discoverable, is_discoverable, bool);
[INFO] [stdout]     |     ----------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:251:53
[INFO] [stdout]     |
[INFO] [stdout] 251 |     pub fn get_product_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 251 |     pub fn get_product_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:256:52
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_device_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_device_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:141:5
[INFO] [stdout]     |
[INFO] [stdout] 141 |     make_getter!(is_pairable);
[INFO] [stdout]     |     ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     make_getter!(get_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     make_setter!(set_pairable, is_pairable, bool);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     make_setter!(set_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     make_option_getter!(get_name, name, String);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 145 |     make_getter!(get_pairable_timeout, pairable_timeout, u32);
[INFO] [stdout]     |     --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     make_setter!(set_name, name, Option<String>);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 147 |     make_setter!(set_pairable_timeout, pairable_timeout, u32);
[INFO] [stdout]     |     --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     make_getter!(get_icon, icon, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:149:5
[INFO] [stdout]     |
[INFO] [stdout] 149 |     make_getter!(get_discoverable_timeout, discoverable_timeout, u32);
[INFO] [stdout]     |     ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:132:5
[INFO] [stdout]     |
[INFO] [stdout] 132 |     make_setter!(set_icon, icon, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 |     make_setter!(set_discoverable_timeout, discoverable_timeout, u32);
[INFO] [stdout]     |     ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:134:5
[INFO] [stdout]     |
[INFO] [stdout] 134 |     make_getter!(get_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     make_getter!(is_discovering);
[INFO] [stdout]     |     ---------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     make_setter!(set_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout] 155 |     make_setter!(set_discovering, is_discovering, bool);
[INFO] [stdout]     |     --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 138 |     make_option_getter!(get_appearance, appearance, u16);
[INFO] [stdout]     |     ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 140 |     make_setter!(set_appearance, appearance, Option<u16>);
[INFO] [stdout]     |     ----------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 |     make_getter!(get_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 159 |     make_setter!(set_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     make_getter!(get_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_adapter.rs:161:5
[INFO] [stdout]     |
[INFO] [stdout] 161 |     make_setter!(set_modalias, modalias, String);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:144:5
[INFO] [stdout]     |
[INFO] [stdout] 144 |     make_setter!(set_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 163 |     pub fn get_device(&self, id: String) -> Result<Arc<FakeBluetoothDevice>, Box<Error>> {
[INFO] [stdout]     |                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 163 |     pub fn get_device(&self, id: String) -> Result<Arc<FakeBluetoothDevice>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:146:5
[INFO] [stdout]     |
[INFO] [stdout] 146 |     make_getter!(is_paired);
[INFO] [stdout]     |     ----------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:174:62
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn get_device_list(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn get_device_list(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:184:76
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn get_first_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<Error>> {
[INFO] [stdout]     |                                                                            ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn get_first_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:192:82
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn add_device(&self, device: Arc<FakeBluetoothDevice>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn add_device(&self, device: Arc<FakeBluetoothDevice>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:148:5
[INFO] [stdout]     |
[INFO] [stdout] 148 |     make_setter!(set_paired, is_paired, bool);
[INFO] [stdout]     |     ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:201:63
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub fn remove_device(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub fn remove_device(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:210:59
[INFO] [stdout]     |
[INFO] [stdout] 210 |     pub fn get_first_ad_data(&self) -> Result<String, Box<Error>> {
[INFO] [stdout]     |                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 210 |     pub fn get_first_ad_data(&self) -> Result<String, Box<dyn Error>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 150 |     make_getter!(is_connectable);
[INFO] [stdout]     |     ---------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:218:90
[INFO] [stdout]     |
[INFO] [stdout] 218 |      pub fn create_discovery_session(&self) -> Result<FakeBluetoothDiscoverySession, Box<Error>> {
[INFO] [stdout]     |                                                                                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 218 |      pub fn create_discovery_session(&self) -> Result<FakeBluetoothDiscoverySession, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     make_setter!(set_connectable, is_connectable, bool);
[INFO] [stdout]     |     --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:222:72
[INFO] [stdout]     |
[INFO] [stdout] 222 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<Error>> {
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 222 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<dyn Error>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:154:5
[INFO] [stdout]     |
[INFO] [stdout] 154 |     make_getter!(is_connected);
[INFO] [stdout]     |     -------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:241:62
[INFO] [stdout]     |
[INFO] [stdout] 241 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<Error>> {
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 241 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<dyn Error>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:246:52
[INFO] [stdout]     |
[INFO] [stdout] 246 |     pub fn get_vendor_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 246 |     pub fn get_vendor_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:156:5
[INFO] [stdout]     |
[INFO] [stdout] 156 |     make_setter!(set_connected, is_connected, bool);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:251:53
[INFO] [stdout]     |
[INFO] [stdout] 251 |     pub fn get_product_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 251 |     pub fn get_product_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_adapter.rs:256:52
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_device_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_device_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     make_getter!(is_trusted);
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     make_getter!(get_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     make_setter!(set_trusted, is_trusted, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     make_setter!(set_address, address, String);
[INFO] [stdout]     |     ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 162 |     make_getter!(is_blocked);
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     make_option_getter!(get_name, name, String);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     make_setter!(set_blocked, is_blocked, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     make_getter!(get_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     make_setter!(set_name, name, Option<String>);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     make_setter!(set_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     make_getter!(get_icon, icon, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 |     make_getter!(is_legacy_pairing);
[INFO] [stdout]     |     ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:132:5
[INFO] [stdout]     |
[INFO] [stdout] 132 |     make_setter!(set_icon, icon, String);
[INFO] [stdout]     |     ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:172:5
[INFO] [stdout]     |
[INFO] [stdout] 172 |     make_setter!(set_legacy_pairing, is_legacy_pairing, bool);
[INFO] [stdout]     |     --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:134:5
[INFO] [stdout]     |
[INFO] [stdout] 134 |     make_getter!(get_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |     make_setter!(set_modalias, modalias, String);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     make_setter!(set_class, class, u32);
[INFO] [stdout]     |     ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     make_option_getter!(get_rssi, rssi, i16);
[INFO] [stdout]     |     ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 138 |     make_option_getter!(get_appearance, appearance, u16);
[INFO] [stdout]     |     ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:178:5
[INFO] [stdout]     |
[INFO] [stdout] 178 |     make_setter!(set_rssi, rssi, Option<i16>);
[INFO] [stdout]     |     ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 140 |     make_setter!(set_appearance, appearance, Option<u16>);
[INFO] [stdout]     |     ----------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 180 |     make_option_getter!(get_tx_power, tx_power, i16);
[INFO] [stdout]     |     ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     make_getter!(get_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     make_setter!(set_tx_power, tx_power, Option<i16>);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:184:5
[INFO] [stdout]     |
[INFO] [stdout] 184 |     make_option_getter!(get_manufacturer_data, manufacturer_data, HashMap<u16, Vec<u8>>);
[INFO] [stdout]     |     ------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:144:5
[INFO] [stdout]     |
[INFO] [stdout] 144 |     make_setter!(set_uuids, uuids, Vec<String>);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:186:5
[INFO] [stdout]     |
[INFO] [stdout] 186 |     make_setter!(set_manufacturer_data, manufacturer_data, Option<HashMap<u16, Vec<u8>>>);
[INFO] [stdout]     |     ------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:146:5
[INFO] [stdout]     |
[INFO] [stdout] 146 |     make_getter!(is_paired);
[INFO] [stdout]     |     ----------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     make_option_getter!(get_service_data, service_data, HashMap<String, Vec<u8>>);
[INFO] [stdout]     |     ----------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 |     make_setter!(set_service_data, service_data, Option<HashMap<String, Vec<u8>>>);
[INFO] [stdout]     |     ------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:148:5
[INFO] [stdout]     |
[INFO] [stdout] 148 |     make_setter!(set_paired, is_paired, bool);
[INFO] [stdout]     |     ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:192:72
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn get_adapter(&self) -> Result<Arc<FakeBluetoothAdapter>, Box<Error>> {
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn get_adapter(&self) -> Result<Arc<FakeBluetoothAdapter>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 150 |     make_getter!(is_connectable);
[INFO] [stdout]     |     ---------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:196:42
[INFO] [stdout]     |
[INFO] [stdout] 196 |     pub fn pair(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 196 |     pub fn pair(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:200:52
[INFO] [stdout]     |
[INFO] [stdout] 200 |     pub fn cancel_pairing(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 200 |     pub fn cancel_pairing(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     make_setter!(set_connectable, is_connectable, bool);
[INFO] [stdout]     |     --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:204:72
[INFO] [stdout]     |
[INFO] [stdout] 204 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<Error>> {
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 204 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<dyn Error>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:223:62
[INFO] [stdout]     |
[INFO] [stdout] 223 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<Error>> {
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 223 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<dyn Error>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:154:5
[INFO] [stdout]     |
[INFO] [stdout] 154 |     make_getter!(is_connected);
[INFO] [stdout]     |     -------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:228:52
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn get_vendor_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn get_vendor_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:233:53
[INFO] [stdout]     |
[INFO] [stdout] 233 |     pub fn get_product_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 233 |     pub fn get_product_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:238:52
[INFO] [stdout]     |
[INFO] [stdout] 238 |     pub fn get_device_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 238 |     pub fn get_device_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:156:5
[INFO] [stdout]     |
[INFO] [stdout] 156 |     make_setter!(set_connected, is_connected, bool);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:243:64
[INFO] [stdout]     |
[INFO] [stdout] 243 |     pub fn get_gatt_services(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 243 |     pub fn get_gatt_services(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:256:94
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_gatt_service_structs(&self) -> Result<Vec<Arc<FakeBluetoothGATTService>>, Box<Error>> {
[INFO] [stdout]     |                                                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_gatt_service_structs(&self) -> Result<Vec<Arc<FakeBluetoothGATTService>>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     make_getter!(is_trusted);
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:269:93
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub fn get_gatt_service(&self, id: String) -> Result<Arc<FakeBluetoothGATTService>, Box<Error>> {
[INFO] [stdout]     |                                                                                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub fn get_gatt_service(&self, id: String) -> Result<Arc<FakeBluetoothGATTService>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:280:89
[INFO] [stdout]     |
[INFO] [stdout] 280 |     pub fn add_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 280 |     pub fn add_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     make_setter!(set_trusted, is_trusted, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:289:64
[INFO] [stdout]     |
[INFO] [stdout] 289 |     pub fn remove_service(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 289 |     pub fn remove_service(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:298:68
[INFO] [stdout]     |
[INFO] [stdout] 298 |     pub fn connect_profile(&self, _uuid: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 298 |     pub fn connect_profile(&self, _uuid: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 162 |     make_getter!(is_blocked);
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:302:71
[INFO] [stdout]     |
[INFO] [stdout] 302 |     pub fn disconnect_profile(&self, _uuid: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 302 |     pub fn disconnect_profile(&self, _uuid: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:306:45
[INFO] [stdout]     |
[INFO] [stdout] 306 |     pub fn connect(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 306 |     pub fn connect(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     make_setter!(set_blocked, is_blocked, bool);
[INFO] [stdout]     |     ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:319:48
[INFO] [stdout]     |
[INFO] [stdout] 319 |     pub fn disconnect(&self) -> Result<(), Box<Error>>{
[INFO] [stdout]     |                                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 319 |     pub fn disconnect(&self) -> Result<(), Box<dyn Error>>{
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:6:63
[INFO] [stdout]     |
[INFO] [stdout] 6   |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     make_getter!(get_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     make_getter!(get_gatt_characteristic_structs, gatt_characteristics, Vec<Arc<FakeBluetoothGATTCharacteristic>>);
[INFO] [stdout]    |     -------------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     make_setter!(set_alias, alias, String);
[INFO] [stdout]     |     -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:28:54
[INFO] [stdout]    |
[INFO] [stdout] 28 |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]    |                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     make_getter!(is_primary);
[INFO] [stdout]    |     ------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     make_setter!(set_is_primary, is_primary, bool);
[INFO] [stdout]    |     ---------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:28:54
[INFO] [stdout]     |
[INFO] [stdout] 28  |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 |     make_getter!(is_legacy_pairing);
[INFO] [stdout]     |     ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     make_setter!(set_includes, included_services, Vec<Arc<FakeBluetoothGATTService>>);
[INFO] [stdout]    |     --------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:172:5
[INFO] [stdout]     |
[INFO] [stdout] 172 |     make_setter!(set_legacy_pairing, is_legacy_pairing, bool);
[INFO] [stdout]     |     --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     make_getter!(get_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |     make_setter!(set_modalias, modalias, String);
[INFO] [stdout]     |     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     make_setter!(set_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     make_option_getter!(get_rssi, rssi, i16);
[INFO] [stdout]     |     ---------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:69:70
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn get_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<Error>> {
[INFO] [stdout]    |                                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn get_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:73:71
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn get_gatt_characteristics(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]    |                                                                       ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn get_gatt_characteristics(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:178:5
[INFO] [stdout]     |
[INFO] [stdout] 178 |     make_setter!(set_rssi, rssi, Option<i16>);
[INFO] [stdout]     |     ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:82:107
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn get_gatt_characteristic(&self, id: String) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<Error>> {
[INFO] [stdout]    |                                                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn get_gatt_characteristic(&self, id: String) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 180 |     make_option_getter!(get_tx_power, tx_power, i16);
[INFO] [stdout]     |     ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:93:110
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn add_characteristic(&self, characteristic: Arc<FakeBluetoothGATTCharacteristic>) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                                                              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn add_characteristic(&self, characteristic: Arc<FakeBluetoothGATTCharacteristic>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:102:71
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn remove_characteristic(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn remove_characteristic(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     make_setter!(set_tx_power, tx_power, Option<i16>);
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:111:98
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_included_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_included_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:120:73
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_included_service(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_included_service(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:184:5
[INFO] [stdout]     |
[INFO] [stdout] 184 |     make_option_getter!(get_manufacturer_data, manufacturer_data, HashMap<u16, Vec<u8>>);
[INFO] [stdout]     |     ------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:129:59
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn get_includes(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]     |                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn get_includes(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:186:5
[INFO] [stdout]     |
[INFO] [stdout] 186 |     make_setter!(set_manufacturer_data, manufacturer_data, Option<HashMap<u16, Vec<u8>>>);
[INFO] [stdout]     |     ------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     make_getter!(get_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:41:63
[INFO] [stdout]     |
[INFO] [stdout] 41  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     make_option_getter!(get_service_data, service_data, HashMap<String, Vec<u8>>);
[INFO] [stdout]     |     ----------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     make_setter!(set_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:41:63
[INFO] [stdout]    |
[INFO] [stdout] 41 |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     make_option_getter!(get_value, value, Vec<u8>);
[INFO] [stdout]    |     ---------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:57:75
[INFO] [stdout]     |
[INFO] [stdout] 57  |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fake_device.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 |     make_setter!(set_service_data, service_data, Option<HashMap<String, Vec<u8>>>);
[INFO] [stdout]     |     ------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:192:72
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn get_adapter(&self) -> Result<Arc<FakeBluetoothAdapter>, Box<Error>> {
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn get_adapter(&self) -> Result<Arc<FakeBluetoothAdapter>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     make_setter!(set_value, value, Option<Vec<u8>>);
[INFO] [stdout]    |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:196:42
[INFO] [stdout]     |
[INFO] [stdout] 196 |     pub fn pair(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 196 |     pub fn pair(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:200:52
[INFO] [stdout]     |
[INFO] [stdout] 200 |     pub fn cancel_pairing(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 200 |     pub fn cancel_pairing(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:28:54
[INFO] [stdout]    |
[INFO] [stdout] 28 |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]    |                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     make_getter!(is_notifying);
[INFO] [stdout]    |     -------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:204:72
[INFO] [stdout]     |
[INFO] [stdout] 204 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<Error>> {
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 204 |     pub fn get_modalias(&self) ->  Result<(String, u32, u32, u32), Box<dyn Error>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 |     make_setter!(set_notifying, is_notifying, bool);
[INFO] [stdout]    |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:223:62
[INFO] [stdout]     |
[INFO] [stdout] 223 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<Error>> {
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 223 |     pub fn get_vendor_id_source(&self) -> Result<String, Box<dyn Error>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:228:52
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn get_vendor_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn get_vendor_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 73 |     make_getter!(get_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:233:53
[INFO] [stdout]     |
[INFO] [stdout] 233 |     pub fn get_product_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 233 |     pub fn get_product_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     make_setter!(set_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:238:52
[INFO] [stdout]     |
[INFO] [stdout] 238 |     pub fn get_device_id(&self) -> Result<u32, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 238 |     pub fn get_device_id(&self) -> Result<u32, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 77 |     make_getter!(get_gatt_descriptor_structs, gatt_descriptors, Vec<Arc<FakeBluetoothGATTDescriptor>>);
[INFO] [stdout]    |     -------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:243:64
[INFO] [stdout]     |
[INFO] [stdout] 243 |     pub fn get_gatt_services(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 243 |     pub fn get_gatt_services(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:256:94
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_gatt_service_structs(&self) -> Result<Vec<Arc<FakeBluetoothGATTService>>, Box<Error>> {
[INFO] [stdout]     |                                                                                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub fn get_gatt_service_structs(&self) -> Result<Vec<Arc<FakeBluetoothGATTService>>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:79:76
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn get_service(&self) -> Result<Arc<FakeBluetoothGATTService>, Box<Error>> {
[INFO] [stdout]    |                                                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn get_service(&self) -> Result<Arc<FakeBluetoothGATTService>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:269:93
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub fn get_gatt_service(&self, id: String) -> Result<Arc<FakeBluetoothGATTService>, Box<Error>> {
[INFO] [stdout]     |                                                                                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub fn get_gatt_service(&self, id: String) -> Result<Arc<FakeBluetoothGATTService>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:83:50
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn start_notify(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn start_notify(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:280:89
[INFO] [stdout]     |
[INFO] [stdout] 280 |     pub fn add_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 280 |     pub fn add_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:87:49
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn stop_notify(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn stop_notify(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:289:64
[INFO] [stdout]     |
[INFO] [stdout] 289 |     pub fn remove_service(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 289 |     pub fn remove_service(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:91:67
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn get_gatt_descriptors(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]    |                                                                   ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn get_gatt_descriptors(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:298:68
[INFO] [stdout]     |
[INFO] [stdout] 298 |     pub fn connect_profile(&self, _uuid: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 298 |     pub fn connect_profile(&self, _uuid: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:100:99
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn get_gatt_descriptor(&self, id: String) -> Result<Arc<FakeBluetoothGATTDescriptor>, Box<Error>> {
[INFO] [stdout]     |                                                                                                   ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn get_gatt_descriptor(&self, id: String) -> Result<Arc<FakeBluetoothGATTDescriptor>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:302:71
[INFO] [stdout]     |
[INFO] [stdout] 302 |     pub fn disconnect_profile(&self, _uuid: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 302 |     pub fn disconnect_profile(&self, _uuid: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:111:98
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_descriptor(&self, descriptor: Arc<FakeBluetoothGATTDescriptor>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_descriptor(&self, descriptor: Arc<FakeBluetoothGATTDescriptor>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:306:45
[INFO] [stdout]     |
[INFO] [stdout] 306 |     pub fn connect(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 306 |     pub fn connect(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:120:67
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_descriptor(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                   ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_descriptor(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_device.rs:319:48
[INFO] [stdout]     |
[INFO] [stdout] 319 |     pub fn disconnect(&self) -> Result<(), Box<Error>>{
[INFO] [stdout]     |                                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 319 |     pub fn disconnect(&self) -> Result<(), Box<dyn Error>>{
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:129:53
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<Error>> {
[INFO] [stdout]     |                                                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:133:65
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     make_getter!(get_gatt_characteristic_structs, gatt_characteristics, Vec<Arc<FakeBluetoothGATTCharacteristic>>);
[INFO] [stdout]    |     -------------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     make_getter!(get_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     make_setter!(set_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:28:54
[INFO] [stdout]    |
[INFO] [stdout] 28 |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]    |                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     make_getter!(is_primary);
[INFO] [stdout]    |     ------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:41:63
[INFO] [stdout]    |
[INFO] [stdout] 41 |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     make_option_getter!(get_value, value, Vec<u8>);
[INFO] [stdout]    |     ---------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     make_setter!(set_is_primary, is_primary, bool);
[INFO] [stdout]    |     ---------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     make_setter!(set_value, value, Option<Vec<u8>>);
[INFO] [stdout]    |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     make_setter!(set_includes, included_services, Vec<Arc<FakeBluetoothGATTService>>);
[INFO] [stdout]    |     --------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     make_getter!(get_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     make_getter!(get_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     make_setter!(set_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_service.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     make_setter!(set_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_descriptor.rs:64:90
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn get_characteristic(&self) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<Error>> {
[INFO] [stdout]    |                                                                                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn get_characteristic(&self) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:69:70
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn get_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<Error>> {
[INFO] [stdout]    |                                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn get_device(&self) -> Result<Arc<FakeBluetoothDevice>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_descriptor.rs:68:53
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<Error>> {
[INFO] [stdout]    |                                                     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]    |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_descriptor.rs:72:65
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:73:71
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn get_gatt_characteristics(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]    |                                                                       ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn get_gatt_characteristics(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_discovery_session.rs:11:108
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn create_session(adapter: Arc<FakeBluetoothAdapter>) -> Result<FakeBluetoothDiscoverySession, Box<Error>> {
[INFO] [stdout]    |                                                                                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn create_session(adapter: Arc<FakeBluetoothAdapter>) -> Result<FakeBluetoothDiscoverySession, Box<dyn Error>> {
[INFO] [stdout]    |                                                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:82:107
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn get_gatt_characteristic(&self, id: String) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<Error>> {
[INFO] [stdout]    |                                                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn get_gatt_characteristic(&self, id: String) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_discovery_session.rs:25:53
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn start_discovery(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn start_discovery(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_service.rs:93:110
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn add_characteristic(&self, characteristic: Arc<FakeBluetoothGATTCharacteristic>) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                                                              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn add_characteristic(&self, characteristic: Arc<FakeBluetoothGATTCharacteristic>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_discovery_session.rs:33:52
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn stop_discovery(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn stop_discovery(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:102:71
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn remove_characteristic(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn remove_characteristic(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:111:98
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_included_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_included_service(&self, service: Arc<FakeBluetoothGATTService>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:120:73
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_included_service(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_included_service(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_service.rs:129:59
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn get_includes(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]     |                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn get_includes(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     make_getter!(get_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     make_setter!(set_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:41:63
[INFO] [stdout]    |
[INFO] [stdout] 41 |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     make_option_getter!(get_value, value, Vec<u8>);
[INFO] [stdout]    |     ---------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     make_setter!(set_value, value, Option<Vec<u8>>);
[INFO] [stdout]    |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:28:54
[INFO] [stdout]    |
[INFO] [stdout] 28 |         pub fn $attr_name(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]    |                                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     make_getter!(is_notifying);
[INFO] [stdout]    |     -------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 |     make_setter!(set_notifying, is_notifying, bool);
[INFO] [stdout]    |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 73 |     make_getter!(get_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     make_setter!(set_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_characteristic.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 77 |     make_getter!(get_gatt_descriptor_structs, gatt_descriptors, Vec<Arc<FakeBluetoothGATTDescriptor>>);
[INFO] [stdout]    |     -------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:79:76
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn get_service(&self) -> Result<Arc<FakeBluetoothGATTService>, Box<Error>> {
[INFO] [stdout]    |                                                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn get_service(&self) -> Result<Arc<FakeBluetoothGATTService>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:83:50
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn start_notify(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn start_notify(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:87:49
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn stop_notify(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn stop_notify(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_characteristic.rs:91:67
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn get_gatt_descriptors(&self) -> Result<Vec<String>, Box<Error>> {
[INFO] [stdout]    |                                                                   ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn get_gatt_descriptors(&self) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:100:99
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn get_gatt_descriptor(&self, id: String) -> Result<Arc<FakeBluetoothGATTDescriptor>, Box<Error>> {
[INFO] [stdout]     |                                                                                                   ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn get_gatt_descriptor(&self, id: String) -> Result<Arc<FakeBluetoothGATTDescriptor>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:111:98
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_descriptor(&self, descriptor: Arc<FakeBluetoothGATTDescriptor>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                                                  ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn add_descriptor(&self, descriptor: Arc<FakeBluetoothGATTDescriptor>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:120:67
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_descriptor(&self, id: String) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                   ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn remove_descriptor(&self, id: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:129:53
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<Error>> {
[INFO] [stdout]     |                                                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fake_characteristic.rs:133:65
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     make_getter!(get_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     make_setter!(set_uuid, uuid, String);
[INFO] [stdout]    |     ------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:41:63
[INFO] [stdout]    |
[INFO] [stdout] 41 |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     make_option_getter!(get_value, value, Vec<u8>);
[INFO] [stdout]    |     ---------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_option_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     make_setter!(set_value, value, Option<Vec<u8>>);
[INFO] [stdout]    |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:6:63
[INFO] [stdout]    |
[INFO] [stdout] 6  |         pub fn $function_name(&self) -> Result<$ret_type, Box<Error>> {
[INFO] [stdout]    |                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     make_getter!(get_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_getter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:57:75
[INFO] [stdout]    |
[INFO] [stdout] 57 |         pub fn $function_name(&self, value: $attr_type) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/fake_descriptor.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     make_setter!(set_flags, flags, Vec<String>);
[INFO] [stdout]    |     ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `make_setter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_descriptor.rs:64:90
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn get_characteristic(&self) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<Error>> {
[INFO] [stdout]    |                                                                                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn get_characteristic(&self) -> Result<Arc<FakeBluetoothGATTCharacteristic>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_descriptor.rs:68:53
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<Error>> {
[INFO] [stdout]    |                                                     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub fn read_value(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]    |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_descriptor.rs:72:65
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn write_value(&self, value: Vec<u8>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_discovery_session.rs:11:108
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn create_session(adapter: Arc<FakeBluetoothAdapter>) -> Result<FakeBluetoothDiscoverySession, Box<Error>> {
[INFO] [stdout]    |                                                                                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn create_session(adapter: Arc<FakeBluetoothAdapter>) -> Result<FakeBluetoothDiscoverySession, Box<dyn Error>> {
[INFO] [stdout]    |                                                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_discovery_session.rs:25:53
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn start_discovery(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn start_discovery(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fake_discovery_session.rs:33:52
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn stop_discovery(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn stop_discovery(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `product_version` is never read
[INFO] [stdout]   --> src/fake_device.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct FakeBluetoothDevice {
[INFO] [stdout]    |            ------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     product_version: Arc<Mutex<u32>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FakeBluetoothDevice` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 163 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `product_version` is never read
[INFO] [stdout]   --> src/fake_device.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct FakeBluetoothDevice {
[INFO] [stdout]    |            ------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     product_version: Arc<Mutex<u32>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FakeBluetoothDevice` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 163 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.46s
[INFO] running `Command { std: "docker" "inspect" "960e8226ee3426b602e28abaf9b9ab4ad6b0b8a3c91bb0df24185e5446b9f14b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "960e8226ee3426b602e28abaf9b9ab4ad6b0b8a3c91bb0df24185e5446b9f14b", kill_on_drop: false }`
[INFO] [stdout] 960e8226ee3426b602e28abaf9b9ab4ad6b0b8a3c91bb0df24185e5446b9f14b
