[INFO] fetching crate rusty-driver 0.3.3...
[INFO] testing rusty-driver-0.3.3 against 1.91.0 for beta-1.92-2
[INFO] extracting crate rusty-driver 0.3.3 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate rusty-driver 0.3.3
[INFO] finished tweaking crates.io crate rusty-driver 0.3.3
[INFO] tweaked toml for crates.io crate rusty-driver 0.3.3 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate rusty-driver 0.3.3 on toolchain 1.91.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.91.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate rusty-driver 0.3.3 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.91.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded pin-project v1.0.10
[INFO] [stderr]   Downloaded redox_syscall v0.2.11
[INFO] [stderr]   Downloaded error-chain v0.12.4
[INFO] [stderr]   Downloaded backtrace v0.3.64
[INFO] [stderr]   Downloaded mio v0.8.0
[INFO] [stderr]   Downloaded headers v0.3.7
[INFO] [stderr]   Downloaded httparse v1.6.0
[INFO] [stderr]   Downloaded pin-project v0.4.29
[INFO] [stderr]   Downloaded tracing-core v0.1.22
[INFO] [stderr]   Downloaded webdriver v0.44.0
[INFO] [stderr]   Downloaded hyper v0.14.17
[INFO] [stderr]   Downloaded cookie v0.12.0
[INFO] [stderr]   Downloaded pin-project-internal v1.0.10
[INFO] [stderr]   Downloaded tracing v0.1.31
[INFO] [stderr]   Downloaded block-buffer v0.10.2
[INFO] [stderr]   Downloaded crypto-common v0.1.3
[INFO] [stderr]   Downloaded digest v0.10.3
[INFO] [stderr]   Downloaded sha-1 v0.10.0
[INFO] [stderr]   Downloaded futures-macro v0.3.21
[INFO] [stderr]   Downloaded pin-project-internal v0.4.29
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9bf78c48ccb6d6cb5394359faa43d478f4fbafe62efc5c07f6a77bb8d360fec1
[INFO] running `Command { std: "docker" "start" "-a" "9bf78c48ccb6d6cb5394359faa43d478f4fbafe62efc5c07f6a77bb8d360fec1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9bf78c48ccb6d6cb5394359faa43d478f4fbafe62efc5c07f6a77bb8d360fec1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9bf78c48ccb6d6cb5394359faa43d478f4fbafe62efc5c07f6a77bb8d360fec1", kill_on_drop: false }`
[INFO] [stdout] 9bf78c48ccb6d6cb5394359faa43d478f4fbafe62efc5c07f6a77bb8d360fec1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f32028efab27c9216f89e7cdeceacf4d209a2d79d0467a171345d8c5277c15b8
[INFO] running `Command { std: "docker" "start" "-a" "f32028efab27c9216f89e7cdeceacf4d209a2d79d0467a171345d8c5277c15b8", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.119
[INFO] [stderr]    Compiling proc-macro2 v1.0.36
[INFO] [stderr]    Compiling syn v1.0.86
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling slab v0.4.5
[INFO] [stderr]    Compiling futures-channel v0.3.21
[INFO] [stderr]    Compiling typenum v1.15.0
[INFO] [stderr]    Compiling futures-util v0.3.21
[INFO] [stderr]    Compiling generic-array v0.14.5
[INFO] [stderr]    Compiling pkg-config v0.3.24
[INFO] [stderr]    Compiling tracing-core v0.1.22
[INFO] [stderr]    Compiling unicase v2.6.0
[INFO] [stderr]    Compiling httparse v1.6.0
[INFO] [stderr]    Compiling indexmap v1.8.0
[INFO] [stderr]    Compiling pin-project-internal v0.4.29
[INFO] [stderr]    Compiling miniz_oxide v0.4.4
[INFO] [stderr]    Compiling native-tls v0.2.8
[INFO] [stderr]    Compiling itoa v0.4.8
[INFO] [stderr]    Compiling cpufeatures v0.2.1
[INFO] [stderr]    Compiling http-body v0.3.1
[INFO] [stderr]    Compiling headers-core v0.2.0
[INFO] [stderr]    Compiling backtrace v0.3.64
[INFO] [stderr]    Compiling httpdate v0.3.2
[INFO] [stderr]    Compiling gimli v0.26.1
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling openssl-sys v0.9.72
[INFO] [stderr]    Compiling serde_derive v1.0.136
[INFO] [stderr]    Compiling dtoa v0.4.8
[INFO] [stderr]    Compiling want v0.3.0
[INFO] [stderr]    Compiling object v0.27.1
[INFO] [stderr]    Compiling error-chain v0.12.4
[INFO] [stderr]    Compiling tracing v0.1.31
[INFO] [stderr]    Compiling mime_guess v2.0.4
[INFO] [stderr]    Compiling serde_urlencoded v0.6.1
[INFO] [stderr]    Compiling urlencoding v1.3.3
[INFO] [stderr]    Compiling scoped-tls v1.0.0
[INFO] [stderr]    Compiling regex-syntax v0.6.25
[INFO] [stderr]    Compiling rustc-demangle v0.1.21
[INFO] [stderr]    Compiling net2 v0.2.37
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling mio v0.8.0
[INFO] [stderr]    Compiling socket2 v0.4.4
[INFO] [stderr]    Compiling socket2 v0.3.19
[INFO] [stderr]    Compiling time v0.1.44
[INFO] [stderr]    Compiling mio v0.6.23
[INFO] [stderr]    Compiling quote v1.0.15
[INFO] [stderr]    Compiling openssl v0.10.38
[INFO] [stderr]    Compiling tokio v1.17.0
[INFO] [stderr]    Compiling base64 v0.12.3
[INFO] [stderr]    Compiling unicode-segmentation v1.9.0
[INFO] [stderr]    Compiling cookie v0.12.0
[INFO] [stderr]    Compiling tokio v0.2.25
[INFO] [stderr]    Compiling regex v1.5.4
[INFO] [stderr]    Compiling block-buffer v0.10.2
[INFO] [stderr]    Compiling crypto-common v0.1.3
[INFO] [stderr]    Compiling digest v0.10.3
[INFO] [stderr]    Compiling sha-1 v0.10.0
[INFO] [stderr]    Compiling headers v0.3.7
[INFO] [stderr]    Compiling addr2line v0.17.0
[INFO] [stderr]    Compiling tokio-native-tls v0.3.0
[INFO] [stderr]    Compiling futures-macro v0.3.21
[INFO] [stderr]    Compiling pin-project-internal v1.0.10
[INFO] [stderr]    Compiling tokio-util v0.3.1
[INFO] [stderr]    Compiling pin-project v0.4.29
[INFO] [stderr]    Compiling pin-project v1.0.10
[INFO] [stderr]    Compiling tracing-futures v0.2.5
[INFO] [stderr]    Compiling futures-executor v0.3.21
[INFO] [stderr]    Compiling h2 v0.2.7
[INFO] [stderr]    Compiling futures v0.3.21
[INFO] [stderr]    Compiling hyper v0.14.17
[INFO] [stderr]    Compiling hyper-tls v0.5.0
[INFO] [stderr]    Compiling hyper v0.13.10
[INFO] [stderr]    Compiling warp v0.2.5
[INFO] [stderr]    Compiling webdriver v0.44.0
[INFO] [stderr]    Compiling rusty-driver v0.3.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition name: `has_error_description_deprecated`
[INFO] [stdout]   --> src/error.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout]  1 | / error_chain! {
[INFO] [stdout]  2 | |     foreign_links {
[INFO] [stdout]  3 | |         HttpError(::http::Error);
[INFO] [stdout]  4 | |         HyperError(::hyper::Error);
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `impl_error_chain_processed` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `impl_error_chain_processed` may come from an old version of the `error_chain` crate, try updating your dependency with `cargo update -p error_chain`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:316:13
[INFO] [stdout]     |
[INFO] [stdout] 316 |         self.clone().execute(js, args).await?;
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 316 -         self.clone().execute(js, args).await?;
[INFO] [stdout] 316 +         self.execute(js, args).await?;
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:323:19
[INFO] [stdout]     |
[INFO] [stdout] 323 |         match self.clone().attr(eid.clone(), String::from("href")).await? {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 323 -         match self.clone().attr(eid.clone(), String::from("href")).await? {
[INFO] [stdout] 323 +         match self.attr(eid.clone(), String::from("href")).await? {
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:340:23
[INFO] [stdout]     |
[INFO] [stdout] 340 |         let elt = self.clone().find(locator.into(), Some(eid)).await?;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 340 -         let elt = self.clone().find(locator.into(), Some(eid)).await?;
[INFO] [stdout] 340 +         let elt = self.find(locator.into(), Some(eid)).await?;
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:347:23
[INFO] [stdout]     |
[INFO] [stdout] 347 |         let res = self.clone().execute(js, args).await?;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 347 -         let res = self.clone().execute(js, args).await?;
[INFO] [stdout] 347 +         let res = self.execute(js, args).await?;
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:363:23
[INFO] [stdout]     |
[INFO] [stdout] 363 |         let elt = self.clone().find(button.into(), Some(eid)).await?;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 363 -         let elt = self.clone().find(button.into(), Some(eid)).await?;
[INFO] [stdout] 363 +         let elt = self.find(button.into(), Some(eid)).await?;
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:364:16
[INFO] [stdout]     |
[INFO] [stdout] 364 |         Ok(self.clone().click(elt).await?)
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 364 -         Ok(self.clone().click(elt).await?)
[INFO] [stdout] 364 +         Ok(self.click(elt).await?)
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:403:13
[INFO] [stdout]     |
[INFO] [stdout] 403 |         self.clone().execute(js, args).await?;
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 403 -         self.clone().execute(js, args).await?;
[INFO] [stdout] 403 +         self.execute(js, args).await?;
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 41.12s
[INFO] running `Command { std: "docker" "inspect" "f32028efab27c9216f89e7cdeceacf4d209a2d79d0467a171345d8c5277c15b8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f32028efab27c9216f89e7cdeceacf4d209a2d79d0467a171345d8c5277c15b8", kill_on_drop: false }`
[INFO] [stdout] f32028efab27c9216f89e7cdeceacf4d209a2d79d0467a171345d8c5277c15b8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 758e64cc7bd99eef442a148a4ca132abb0cd817724524f42b38d53d6636acbd3
[INFO] running `Command { std: "docker" "start" "-a" "758e64cc7bd99eef442a148a4ca132abb0cd817724524f42b38d53d6636acbd3", kill_on_drop: false }`
[INFO] [stderr]    Compiling rusty-driver v0.3.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition name: `has_error_description_deprecated`
[INFO] [stdout]   --> src/error.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout]  1 | / error_chain! {
[INFO] [stdout]  2 | |     foreign_links {
[INFO] [stdout]  3 | |         HttpError(::http::Error);
[INFO] [stdout]  4 | |         HyperError(::hyper::Error);
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `impl_error_chain_processed` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `impl_error_chain_processed` may come from an old version of the `error_chain` crate, try updating your dependency with `cargo update -p error_chain`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:316:13
[INFO] [stdout]     |
[INFO] [stdout] 316 |         self.clone().execute(js, args).await?;
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 316 -         self.clone().execute(js, args).await?;
[INFO] [stdout] 316 +         self.execute(js, args).await?;
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:323:19
[INFO] [stdout]     |
[INFO] [stdout] 323 |         match self.clone().attr(eid.clone(), String::from("href")).await? {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 323 -         match self.clone().attr(eid.clone(), String::from("href")).await? {
[INFO] [stdout] 323 +         match self.attr(eid.clone(), String::from("href")).await? {
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:340:23
[INFO] [stdout]     |
[INFO] [stdout] 340 |         let elt = self.clone().find(locator.into(), Some(eid)).await?;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 340 -         let elt = self.clone().find(locator.into(), Some(eid)).await?;
[INFO] [stdout] 340 +         let elt = self.find(locator.into(), Some(eid)).await?;
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:347:23
[INFO] [stdout]     |
[INFO] [stdout] 347 |         let res = self.clone().execute(js, args).await?;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 347 -         let res = self.clone().execute(js, args).await?;
[INFO] [stdout] 347 +         let res = self.execute(js, args).await?;
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:363:23
[INFO] [stdout]     |
[INFO] [stdout] 363 |         let elt = self.clone().find(button.into(), Some(eid)).await?;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 363 -         let elt = self.clone().find(button.into(), Some(eid)).await?;
[INFO] [stdout] 363 +         let elt = self.find(button.into(), Some(eid)).await?;
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:364:16
[INFO] [stdout]     |
[INFO] [stdout] 364 |         Ok(self.clone().click(elt).await?)
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 364 -         Ok(self.clone().click(elt).await?)
[INFO] [stdout] 364 +         Ok(self.click(elt).await?)
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:403:13
[INFO] [stdout]     |
[INFO] [stdout] 403 |         self.clone().execute(js, args).await?;
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 403 -         self.clone().execute(js, args).await?;
[INFO] [stdout] 403 +         self.execute(js, args).await?;
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `await`
[INFO] [stdout]   --> examples/curl.rs:20:23
[INFO] [stdout]    |
[INFO] [stdout] 20 | use futures::prelude::await;
[INFO] [stdout]    |                       ^^^^^ expected identifier, found keyword
[INFO] [stdout]    |
[INFO] [stdout] help: escape `await` to use it as an identifier
[INFO] [stdout]    |
[INFO] [stdout] 20 | use futures::prelude::r#await;
[INFO] [stdout]    |                       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `async`
[INFO] [stdout]   --> examples/curl.rs:25:3
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[async]
[INFO] [stdout]    |   ^^^^^ expected identifier, found keyword
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: incorrect use of `await`
[INFO] [stdout]   --> examples/curl.rs:27:18
[INFO] [stdout]    |
[INFO] [stdout] 27 |     let driver = await!(Driver::new("http://localhost:4444".into(), None))?;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: `await` is a postfix operation
[INFO] [stdout]    |
[INFO] [stdout] 27 -     let driver = await!(Driver::new("http://localhost:4444".into(), None))?;
[INFO] [stdout] 27 +     let driver = Driver::new("http://localhost:4444".into(), None).await)?;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: incorrect use of `await`
[INFO] [stdout]   --> examples/curl.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     await!(driver.clone().goto(url))?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: `await` is a postfix operation
[INFO] [stdout]    |
[INFO] [stdout] 28 -     await!(driver.clone().goto(url))?;
[INFO] [stdout] 28 +     driver.clone().goto(url).await)?;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: incorrect use of `await`
[INFO] [stdout]   --> examples/curl.rs:29:16
[INFO] [stdout]    |
[INFO] [stdout] 29 |     let body = await!(driver.clone().find(Locator::Css("body".into()), None))?;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: `await` is a postfix operation
[INFO] [stdout]    |
[INFO] [stdout] 29 -     let body = await!(driver.clone().find(Locator::Css("body".into()), None))?;
[INFO] [stdout] 29 +     let body = driver.clone().find(Locator::Css("body".into()), None).await)?;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]   --> examples/curl.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | #![feature(generators, use_extern_macros, proc_macro_non_items, nll)]
[INFO] [stdout]    |            ^^^^^^^^^^ feature has been removed
[INFO] [stdout]    |
[INFO] [stdout]    = note: removed in 1.75.0; see <https://github.com/rust-lang/rust/pull/116958> for more information
[INFO] [stdout]    = note: renamed to `coroutines`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]   --> examples/curl.rs:13:43
[INFO] [stdout]    |
[INFO] [stdout] 13 | #![feature(generators, use_extern_macros, proc_macro_non_items, nll)]
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^ feature has been removed
[INFO] [stdout]    |
[INFO] [stdout]    = note: removed in 1.27.0; see <https://github.com/rust-lang/rust/pull/52121> for more information
[INFO] [stdout]    = note: subsumed by `#![feature(proc_macro_hygiene)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0463]: can't find crate for `futures_await`
[INFO] [stdout]   --> examples/curl.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | extern crate futures_await as futures;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't find crate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `await`
[INFO] [stdout]   --> examples/wikipedia.rs:20:23
[INFO] [stdout]    |
[INFO] [stdout] 20 | use futures::prelude::await;
[INFO] [stdout]    |                       ^^^^^ expected identifier, found keyword
[INFO] [stdout]    |
[INFO] [stdout] help: escape `await` to use it as an identifier
[INFO] [stdout]    |
[INFO] [stdout] 20 | use futures::prelude::r#await;
[INFO] [stdout]    |                       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `async`
[INFO] [stdout]   --> examples/wikipedia.rs:25:3
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[async]
[INFO] [stdout]    |   ^^^^^ expected identifier, found keyword
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: incorrect use of `await`
[INFO] [stdout]   --> examples/wikipedia.rs:27:18
[INFO] [stdout]    |
[INFO] [stdout] 27 |     let driver = await!(Driver::new("http://localhost:4444".into(), None))?;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: `await` is a postfix operation
[INFO] [stdout]    |
[INFO] [stdout] 27 -     let driver = await!(Driver::new("http://localhost:4444".into(), None))?;
[INFO] [stdout] 27 +     let driver = Driver::new("http://localhost:4444".into(), None).await)?;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: incorrect use of `await`
[INFO] [stdout]   --> examples/wikipedia.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     await!(driver.clone().goto("https://www.wikipedia.org".into()))?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: `await` is a postfix operation
[INFO] [stdout]    |
[INFO] [stdout] 28 -     await!(driver.clone().goto("https://www.wikipedia.org".into()))?;
[INFO] [stdout] 28 +     driver.clone().goto("https://www.wikipedia.org".into()).await)?;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: incorrect use of `await`
[INFO] [stdout]   --> examples/wikipedia.rs:29:18
[INFO] [stdout]    |
[INFO] [stdout] 29 |       let search = await!(
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 30 | |         driver.clone().find(Locator::Css("form#search-form".into()), None)
[INFO] [stdout] 31 | |     )?;
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout] help: `await` is a postfix operation
[INFO] [stdout]    |
[INFO] [stdout] 29 -     let search = await!(
[INFO] [stdout] 30 -         driver.clone().find(Locator::Css("form#search-form".into()), None)
[INFO] [stdout] 29 +     let search = driver.clone().find(Locator::Css("form#search-form".into()), None).await
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: incorrect use of `await`
[INFO] [stdout]   --> examples/wikipedia.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     await!(driver.clone().set_by_name(search.clone(), "search".into(), article))?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: `await` is a postfix operation
[INFO] [stdout]    |
[INFO] [stdout] 32 -     await!(driver.clone().set_by_name(search.clone(), "search".into(), article))?;
[INFO] [stdout] 32 +     driver.clone().set_by_name(search.clone(), "search".into(), article).await)?;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: incorrect use of `await`
[INFO] [stdout]   --> examples/wikipedia.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     await!(driver.clone().submit(search))?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: `await` is a postfix operation
[INFO] [stdout]    |
[INFO] [stdout] 33 -     await!(driver.clone().submit(search))?;
[INFO] [stdout] 33 +     driver.clone().submit(search).await)?;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]   --> examples/wikipedia.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | #![feature(generators, use_extern_macros, proc_macro_non_items, nll)]
[INFO] [stdout]    |            ^^^^^^^^^^ feature has been removed
[INFO] [stdout]    |
[INFO] [stdout]    = note: removed in 1.75.0; see <https://github.com/rust-lang/rust/pull/116958> for more information
[INFO] [stdout]    = note: renamed to `coroutines`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]   --> examples/wikipedia.rs:13:43
[INFO] [stdout]    |
[INFO] [stdout] 13 | #![feature(generators, use_extern_macros, proc_macro_non_items, nll)]
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^ feature has been removed
[INFO] [stdout]    |
[INFO] [stdout]    = note: removed in 1.27.0; see <https://github.com/rust-lang/rust/pull/52121> for more information
[INFO] [stdout]    = note: subsumed by `#![feature(proc_macro_hygiene)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0463]: can't find crate for `futures_await`
[INFO] [stdout]   --> examples/wikipedia.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | extern crate futures_await as futures;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't find crate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: incorrect use of `await`
[INFO] [stdout]   --> examples/wikipedia.rs:34:20
[INFO] [stdout]    |
[INFO] [stdout] 34 |     println!("{}", await!(driver.source())?);
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: `await` is a postfix operation
[INFO] [stdout]    |
[INFO] [stdout] 34 -     println!("{}", await!(driver.source())?);
[INFO] [stdout] 34 +     println!("{}", driver.source().await)?);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: incorrect use of `await`
[INFO] [stdout]   --> examples/curl.rs:30:20
[INFO] [stdout]    |
[INFO] [stdout] 30 |     println!("{}", await!(driver.html(body, true))?);
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: `await` is a postfix operation
[INFO] [stdout]    |
[INFO] [stdout] 30 -     println!("{}", await!(driver.html(body, true))?);
[INFO] [stdout] 30 +     println!("{}", driver.html(body, true).await)?);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `has_error_description_deprecated`
[INFO] [stdout]   --> src/error.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout]  1 | / error_chain! {
[INFO] [stdout]  2 | |     foreign_links {
[INFO] [stdout]  3 | |         HttpError(::http::Error);
[INFO] [stdout]  4 | |         HyperError(::hyper::Error);
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `impl_error_chain_processed` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `impl_error_chain_processed` may come from an old version of the `error_chain` crate, try updating your dependency with `cargo update -p error_chain`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `tokio::run`
[INFO] [stdout]   --> examples/wikipedia.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use tokio::run;
[INFO] [stdout]    |     ^^^^^^^^^^ no `run` in the root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `r#async` in this scope
[INFO] [stdout]   --> examples/wikipedia.rs:25:3
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[async]
[INFO] [stdout]    |   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `async_block` in this scope
[INFO] [stdout]   --> examples/wikipedia.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         run(async_block! {
[INFO] [stdout]    |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> examples/wikipedia.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | #![feature(generators, use_extern_macros, proc_macro_non_items, nll)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the feature `nll` has been stable since `1.63.0` and no longer requires an attribute to enable
[INFO] [stdout]    = help: the feature `nll` has been stable since `1.63.0` and no longer requires an attribute to enable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Driver` and `Locator`
[INFO] [stdout]   --> examples/wikipedia.rs:22:20
[INFO] [stdout]    |
[INFO] [stdout] 22 | use rusty_driver::{Locator, Driver, error::*};
[INFO] [stdout]    |                    ^^^^^^^  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `use_extern_macros` has been stable since 1.30.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> examples/wikipedia.rs:13:24
[INFO] [stdout]    |
[INFO] [stdout] 13 | #![feature(generators, use_extern_macros, proc_macro_non_items, nll)]
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `nll` has been stable since 1.63.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> examples/wikipedia.rs:13:65
[INFO] [stdout]    |
[INFO] [stdout] 13 | #![feature(generators, use_extern_macros, proc_macro_non_items, nll)]
[INFO] [stdout]    |                                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0463, E0554, E0557.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `tokio::run`
[INFO] [stdout]   --> examples/curl.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use tokio::run;
[INFO] [stdout]    |     ^^^^^^^^^^ no `run` in the root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rusty-driver` (example "wikipedia") due to 15 previous errors; 3 warnings emitted
[INFO] [stdout] error: cannot find attribute `r#async` in this scope
[INFO] [stdout]   --> examples/curl.rs:25:3
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[async]
[INFO] [stdout]    |   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: cannot find macro `async_block` in this scope
[INFO] [stdout]   --> examples/curl.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |         run(async_block! {
[INFO] [stdout]    |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rusty-driver` (example "curl") due to 13 previous errors; 3 warnings emitted
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]   --> examples/curl.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | #![feature(generators, use_extern_macros, proc_macro_non_items, nll)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the feature `nll` has been stable since `1.63.0` and no longer requires an attribute to enable
[INFO] [stdout]    = help: the feature `nll` has been stable since `1.63.0` and no longer requires an attribute to enable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Driver` and `Locator`
[INFO] [stdout]   --> examples/curl.rs:22:20
[INFO] [stdout]    |
[INFO] [stdout] 22 | use rusty_driver::{Locator, Driver, error::*};
[INFO] [stdout]    |                    ^^^^^^^  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `use_extern_macros` has been stable since 1.30.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> examples/curl.rs:13:24
[INFO] [stdout]    |
[INFO] [stdout] 13 | #![feature(generators, use_extern_macros, proc_macro_non_items, nll)]
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `nll` has been stable since 1.63.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> examples/curl.rs:13:65
[INFO] [stdout]    |
[INFO] [stdout] 13 | #![feature(generators, use_extern_macros, proc_macro_non_items, nll)]
[INFO] [stdout]    |                                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0463, E0554, E0557.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:316:13
[INFO] [stdout]     |
[INFO] [stdout] 316 |         self.clone().execute(js, args).await?;
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 316 -         self.clone().execute(js, args).await?;
[INFO] [stdout] 316 +         self.execute(js, args).await?;
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:323:19
[INFO] [stdout]     |
[INFO] [stdout] 323 |         match self.clone().attr(eid.clone(), String::from("href")).await? {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 323 -         match self.clone().attr(eid.clone(), String::from("href")).await? {
[INFO] [stdout] 323 +         match self.attr(eid.clone(), String::from("href")).await? {
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:340:23
[INFO] [stdout]     |
[INFO] [stdout] 340 |         let elt = self.clone().find(locator.into(), Some(eid)).await?;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 340 -         let elt = self.clone().find(locator.into(), Some(eid)).await?;
[INFO] [stdout] 340 +         let elt = self.find(locator.into(), Some(eid)).await?;
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:347:23
[INFO] [stdout]     |
[INFO] [stdout] 347 |         let res = self.clone().execute(js, args).await?;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 347 -         let res = self.clone().execute(js, args).await?;
[INFO] [stdout] 347 +         let res = self.execute(js, args).await?;
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:363:23
[INFO] [stdout]     |
[INFO] [stdout] 363 |         let elt = self.clone().find(button.into(), Some(eid)).await?;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 363 -         let elt = self.clone().find(button.into(), Some(eid)).await?;
[INFO] [stdout] 363 +         let elt = self.find(button.into(), Some(eid)).await?;
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:364:16
[INFO] [stdout]     |
[INFO] [stdout] 364 |         Ok(self.clone().click(elt).await?)
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 364 -         Ok(self.clone().click(elt).await?)
[INFO] [stdout] 364 +         Ok(self.click(elt).await?)
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:403:13
[INFO] [stdout]     |
[INFO] [stdout] 403 |         self.clone().execute(js, args).await?;
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Driver` does not implement `Clone`, so calling `clone` on `&Driver` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 403 -         self.clone().execute(js, args).await?;
[INFO] [stdout] 403 +         self.execute(js, args).await?;
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Driver`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout]  55 + #[derive(Clone)]
[INFO] [stdout]  56 | pub struct Driver(Client);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "758e64cc7bd99eef442a148a4ca132abb0cd817724524f42b38d53d6636acbd3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "758e64cc7bd99eef442a148a4ca132abb0cd817724524f42b38d53d6636acbd3", kill_on_drop: false }`
[INFO] [stdout] 758e64cc7bd99eef442a148a4ca132abb0cd817724524f42b38d53d6636acbd3
