[INFO] fetching crate product-os-browser 0.0.35...
[INFO] testing product-os-browser-0.0.35 against nightly-2024-10-28+rustflags=-Zrandomize-layout for randomize-layout
[INFO] extracting crate product-os-browser 0.0.35 into /workspace/builds/worker-6-tc2/source
[INFO] validating manifest of crates.io crate product-os-browser 0.0.35 on toolchain nightly-2024-10-28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate product-os-browser 0.0.35
[INFO] finished tweaking crates.io crate product-os-browser 0.0.35
[INFO] tweaked toml for crates.io crate product-os-browser 0.0.35 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 427 packages to latest compatible versions
[INFO] [stderr]       Adding brotli v3.5.0 (available: v7.0.0)
[INFO] [stderr]       Adding rustls v0.20.9 (available: v0.23.16)
[INFO] [stderr]       Adding scraper v0.17.1 (available: v0.21.0)
[INFO] [stderr]       Adding thirtyfour v0.31.0 (available: v0.34.0)
[INFO] [stderr]       Adding tokio-rustls v0.23.4 (available: v0.26.0)
[INFO] [stderr]       Adding triomphe v0.1.11 (available: v0.1.14)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3778bd9613b346dd0afd24c9fdcd76a8c966718f7e85d881763d4656b824e778
[INFO] running `Command { std: "docker" "start" "-a" "3778bd9613b346dd0afd24c9fdcd76a8c966718f7e85d881763d4656b824e778", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3778bd9613b346dd0afd24c9fdcd76a8c966718f7e85d881763d4656b824e778", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3778bd9613b346dd0afd24c9fdcd76a8c966718f7e85d881763d4656b824e778", kill_on_drop: false }`
[INFO] [stdout] 3778bd9613b346dd0afd24c9fdcd76a8c966718f7e85d881763d4656b824e778
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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 -Zrandomize-layout" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ff7cfbd500051f38df49cf1dafe29313ee28014853e76ca6cd501194bd659e9d
[INFO] running `Command { std: "docker" "start" "-a" "ff7cfbd500051f38df49cf1dafe29313ee28014853e76ca6cd501194bd659e9d", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.86
[INFO] [stderr]    Compiling jobserver v0.1.32
[INFO] [stderr]    Compiling socket2 v0.5.7
[INFO] [stderr]    Compiling mio v1.0.2
[INFO] [stderr]    Compiling signal-hook-registry v1.4.2
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling http v1.1.0
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling cc v1.1.31
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling num-conv v0.1.0
[INFO] [stderr]    Compiling powerfmt v0.2.0
[INFO] [stderr]    Compiling time-core v0.1.2
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling serde_json v1.0.132
[INFO] [stderr]    Compiling time-macros v0.2.18
[INFO] [stderr]    Compiling deranged v0.3.11
[INFO] [stderr]    Compiling utf-8 v0.7.6
[INFO] [stderr]    Compiling unicode-normalization v0.1.24
[INFO] [stderr]    Compiling atomic-waker v1.1.2
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling unicode-bidi v0.3.17
[INFO] [stderr]    Compiling cpufeatures v0.2.14
[INFO] [stderr]    Compiling phf_shared v0.10.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling idna v0.5.0
[INFO] [stderr]    Compiling cmake v0.1.51
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]    Compiling no-std-compat v0.4.1
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling data-encoding v2.6.0
[INFO] [stderr]    Compiling time v0.3.36
[INFO] [stderr]    Compiling ring v0.17.8
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling aws-lc-sys v0.22.0
[INFO] [stderr]    Compiling zstd-sys v2.0.13+zstd.1.5.6
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling core-error v0.0.1-rc4
[INFO] [stderr]    Compiling rustls v0.21.12
[INFO] [stderr]    Compiling alloc-no-stdlib v2.0.4
[INFO] [stderr]    Compiling alloc-stdlib v0.2.2
[INFO] [stderr]    Compiling untrusted v0.7.1
[INFO] [stderr]    Compiling spin v0.5.2
[INFO] [stderr]    Compiling tower-layer v0.3.3
[INFO] [stderr]    Compiling aws-lc-rs v1.10.0
[INFO] [stderr]    Compiling zstd-safe v7.2.1
[INFO] [stderr]    Compiling cookie v0.17.0
[INFO] [stderr]    Compiling rustversion v1.0.18
[INFO] [stderr]    Compiling rustls-pki-types v1.10.0
[INFO] [stderr]    Compiling miniz_oxide v0.8.0
[INFO] [stderr]    Compiling brotli-decompressor v4.0.1
[INFO] [stderr]    Compiling idna v0.3.0
[INFO] [stderr]    Compiling multer v3.1.0
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling psl-types v2.0.11
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling mirai-annotations v1.12.0
[INFO] [stderr]    Compiling publicsuffix v2.2.3
[INFO] [stderr]    Compiling flate2 v1.0.34
[INFO] [stderr]    Compiling brotli v7.0.0
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling serde_derive v1.0.214
[INFO] [stderr]    Compiling tokio-macros v2.4.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tokio v1.41.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling tracing v0.1.40
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling thiserror-impl v1.0.66
[INFO] [stderr]    Compiling serde v1.0.214
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling thiserror v1.0.66
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling sct v0.7.1
[INFO] [stderr]    Compiling async-trait v0.1.83
[INFO] [stderr]    Compiling phf_generator v0.10.0
[INFO] [stderr]    Compiling zeroize v1.8.1
[INFO] [stderr]    Compiling http-body-util v0.1.2
[INFO] [stderr]    Compiling rustls-webpki v0.101.7
[INFO] [stderr]    Compiling tokio-util v0.7.12
[INFO] [stderr]    Compiling h2 v0.4.6
[INFO] [stderr]    Compiling url v2.5.2
[INFO] [stderr]    Compiling h2 v0.3.26
[INFO] [stderr]    Compiling chrono v0.4.38
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling phf_generator v0.11.2
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling zstd v0.13.2
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling tokio-rustls v0.24.1
[INFO] [stderr]    Compiling tungstenite v0.24.0
[INFO] [stderr]    Compiling string_cache_codegen v0.5.2
[INFO] [stderr]    Compiling pin-project-internal v1.1.7
[INFO] [stderr]    Compiling regex-automata v0.4.8
[INFO] [stderr]    Compiling sync_wrapper v1.0.1
[INFO] [stderr]    Compiling hyper v1.5.0
[INFO] [stderr]    Compiling anyhow v1.0.92
[INFO] [stderr]    Compiling new_debug_unreachable v1.0.6
[INFO] [stderr]    Compiling pin-project v1.1.7
[INFO] [stderr]    Compiling cookie_store v0.20.0
[INFO] [stderr]    Compiling axum-core v0.4.5
[INFO] [stderr]    Compiling tokio-tungstenite v0.24.0
[INFO] [stderr]    Compiling hyper v0.14.31
[INFO] [stderr]    Compiling async-compression v0.4.17
[INFO] [stderr]    Compiling hyper-util v0.1.10
[INFO] [stderr]    Compiling serde_path_to_error v0.1.16
[INFO] [stderr]    Compiling tower v0.5.1
[INFO] [stderr]    Compiling yasna v0.5.2
[INFO] [stderr]    Compiling product-os-http v0.0.7
[INFO] [stderr]    Compiling headers-core v0.3.0
[INFO] [stderr]    Compiling webpki-roots v0.25.4
[INFO] [stderr]    Compiling matchit v0.7.3
[INFO] [stderr]    Compiling headers v0.4.0
[INFO] [stderr]    Compiling axum v0.7.7
[INFO] [stderr]    Compiling product-os-http-body v0.0.14
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling tower v0.4.13
[INFO] [stderr]    Compiling serde_html_form v0.2.6
[INFO] [stderr]    Compiling phf_codegen v0.10.0
[INFO] [stderr]    Compiling hyper-rustls v0.24.2
[INFO] [stderr]    Compiling sha2 v0.10.8
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling reqwest v0.11.27
[INFO] [stderr]    Compiling base64ct v1.6.0
[INFO] [stderr]    Compiling ioslice v0.6.0
[INFO] [stderr]    Compiling precomputed-hash v0.1.1
[INFO] [stderr]    Compiling inflections v1.1.1
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling fiat-crypto v0.2.9
[INFO] [stderr]    Compiling mac v0.1.1
[INFO] [stderr]    Compiling futf v0.1.5
[INFO] [stderr]    Compiling product-os-random v0.0.20
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling jwt-compact v0.8.0
[INFO] [stderr]    Compiling product-os-request v0.0.38
[INFO] [stderr]    Compiling product-os-async-executor v0.0.16
[INFO] [stderr]    Compiling rcgen v0.11.3
[INFO] [stderr]    Compiling phf_macros v0.11.2
[INFO] [stderr]    Compiling axum-extra v0.9.4
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling blake2 v0.10.6
[INFO] [stderr]    Compiling phf_shared v0.11.2
[INFO] [stderr]    Compiling unsafe-libyaml v0.2.11
[INFO] [stderr]    Compiling rustls v0.22.4
[INFO] [stderr]    Compiling no-std-net v0.6.0
[INFO] [stderr]    Compiling phf v0.11.2
[INFO] [stderr]    Compiling asn1-rs-derive v0.5.1
[INFO] [stderr]    Compiling product-os-net v0.0.1
[INFO] [stderr]    Compiling product-os-router v0.0.25
[INFO] [stderr]    Compiling rusticata-macros v4.1.0
[INFO] [stderr]    Compiling tendril v0.4.3
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling string_cache v0.8.7
[INFO] [stderr]    Compiling serde_with v3.11.0
[INFO] [stderr]    Compiling asn1-rs-impl v0.2.0
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling dns-lookup v2.0.4
[INFO] [stderr]    Compiling orion v0.17.7
[INFO] [stderr]    Compiling mopa v0.2.2
[INFO] [stderr]    Compiling xml-rs v0.8.22
[INFO] [stderr]    Compiling rustls v0.20.9
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling asn1-rs v0.6.2
[INFO] [stderr]    Compiling product-os-capabilities v0.0.13
[INFO] [stderr]    Compiling product-os-security v0.0.28
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling product-os-utilities v0.0.19
[INFO] [stderr]    Compiling phf_codegen v0.11.2
[INFO] [stderr]    Compiling product-os-openapi v0.0.4
[INFO] [stderr]    Compiling webpki v0.22.4
[INFO] [stderr]    Compiling cookie v0.16.2
[INFO] [stderr]    Compiling rustls v0.23.16
[INFO] [stderr]    Compiling oid-registry v0.7.1
[INFO] [stderr]    Compiling parking v2.2.1
[INFO] [stderr]    Compiling event-listener v5.3.1
[INFO] [stderr]    Compiling tracing-subscriber v0.3.18
[INFO] [stderr]    Compiling markup5ever v0.13.0
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling product-os-connector v0.0.19
[INFO] [stderr]    Compiling markup5ever v0.11.0
[INFO] [stderr]    Compiling webpki-roots v0.26.6
[INFO] [stderr]    Compiling phf v0.10.1
[INFO] [stderr]    Compiling dtoa v1.0.9
[INFO] [stderr]    Compiling rustls-native-certs v0.6.3
[INFO] [stderr]    Compiling dtoa-short v0.3.5
[INFO] [stderr]    Compiling tokio-rustls v0.23.4
[INFO] [stderr]    Compiling der-parser v9.0.0
[INFO] [stderr]    Compiling event-listener-strategy v0.5.2
[INFO] [stderr]    Compiling product-os-configuration v0.0.28
[INFO] [stderr]    Compiling raw-cpuid v11.2.0
[INFO] [stderr]    Compiling selectors v0.25.0
[INFO] [stderr]    Compiling cssparser-macros v0.6.1
[INFO] [stderr]    Compiling html5ever v0.28.0
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling moka v0.12.8
[INFO] [stderr]    Compiling typed-arena v1.7.0
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling peresil v0.3.0
[INFO] [stderr]    Compiling base64 v0.13.1
[INFO] [stderr]    Compiling sxd-document v0.3.2
[INFO] [stderr]    Compiling webdriver v0.46.0
[INFO] [stderr]    Compiling servo_arc v0.3.0
[INFO] [stderr]    Compiling quanta v0.12.3
[INFO] [stderr]    Compiling cssparser v0.31.2
[INFO] [stderr]    Compiling x509-parser v0.16.0
[INFO] [stderr]    Compiling async-lock v3.4.0
[INFO] [stderr]    Compiling hyper-rustls v0.23.2
[INFO] [stderr]    Compiling axum-server v0.6.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling crossbeam-channel v0.5.13
[INFO] [stderr]    Compiling uuid v1.11.0
[INFO] [stderr]    Compiling axum-macros v0.4.2
[INFO] [stderr]    Compiling html5ever v0.26.0
[INFO] [stderr]    Compiling derive_more v0.99.18
[INFO] [stderr]    Compiling pem v3.0.4
[INFO] [stderr]    Compiling csv-core v0.1.11
[INFO] [stderr]    Compiling unicode-width v0.1.14
[INFO] [stderr]    Compiling tagptr v0.2.0
[INFO] [stderr]    Compiling triomphe v0.1.11
[INFO] [stderr]    Compiling getopts v0.2.21
[INFO] [stderr]    Compiling csv v1.3.0
[INFO] [stderr]    Compiling rcgen v0.13.1
[INFO] [stderr]    Compiling fantoccini v0.19.3
[INFO] [stderr]    Compiling product-os-server v0.0.39
[INFO] [stderr]    Compiling stringmatch v0.4.0
[INFO] [stderr]    Compiling bstr v1.10.0
[INFO] [stderr]    Compiling tokio-graceful v0.1.6
[INFO] [stderr]    Compiling thirtyfour-macros v0.1.3
[INFO] [stderr]    Compiling serde_repr v0.1.19
[INFO] [stderr]    Compiling brotli-decompressor v2.5.1
[INFO] [stderr]    Compiling ego-tree v0.6.3
[INFO] [stderr]    Compiling urlparse v0.7.3
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling thirtyfour v0.31.0
[INFO] [stderr]    Compiling sxd-xpath v0.4.2
[INFO] [stderr]    Compiling scraper v0.17.1
[INFO] [stderr]    Compiling sxd_html v0.1.2
[INFO] [stderr]    Compiling product-os-store v0.0.25
[INFO] [stderr]    Compiling async-recursion v1.1.1
[INFO] [stderr]    Compiling subprocess v0.2.9
[INFO] [stderr]    Compiling brotli v3.5.0
[INFO] [stderr]    Compiling urlencoding v2.1.3
[INFO] [stderr]    Compiling rustls-webpki v0.102.8
[INFO] [stderr]    Compiling tungstenite v0.21.0
[INFO] [stderr]    Compiling tokio-rustls v0.25.0
[INFO] [stderr]    Compiling tokio-tungstenite v0.21.0
[INFO] [stderr]    Compiling hyper-tungstenite v0.13.0
[INFO] [stderr]    Compiling tokio-rustls v0.26.0
[INFO] [stderr]    Compiling hyper-rustls v0.27.3
[INFO] [stderr]    Compiling product-os-proxy v0.0.13
[INFO] [stderr]    Compiling product-os-browser v0.0.35 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved import `product_os_configuration::BrowserActor`
[INFO] [stdout]  --> src/linear_actor.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use product_os_configuration::BrowserActor;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^------------
[INFO] [stdout]   |     |                         |
[INFO] [stdout]   |     |                         help: a similar name exists in the module: `BrowserNetwork`
[INFO] [stdout]   |     no `BrowserActor` in the root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `product_os_configuration::BrowserActor`, `product_os_configuration::BrowserActorKind`
[INFO] [stdout]  --> src/actors.rs:2:32
[INFO] [stdout]   |
[INFO] [stdout] 2 | use product_os_configuration::{BrowserActor, BrowserActorKind};
[INFO] [stdout]   |                                ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^ no `BrowserActorKind` in the root
[INFO] [stdout]   |                                |
[INFO] [stdout]   |                                no `BrowserActor` in the root
[INFO] [stdout]   |                                help: a similar name exists in the module: `BrowserNetwork`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `scraper::ElementRef`
[INFO] [stdout]  --> src/element.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use scraper::ElementRef;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HttpBody`
[INFO] [stdout]   --> src/proxy_middleware_handler.rs:16:44
[INFO] [stdout]    |
[INFO] [stdout] 16 | use product_os_server::{BodyBytes as Body, HttpBody, Request, Response};
[INFO] [stdout]    |                                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `headers::HeaderMap`
[INFO] [stdout]   --> src/proxy_middleware_handler.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use headers::HeaderMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parking_lot::Mutex`
[INFO] [stdout]   --> src/proxy_middleware_handler.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use parking_lot::Mutex;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BodyError`
[INFO] [stdout]   --> src/proxy_middleware_handler.rs:26:37
[INFO] [stdout]    |
[INFO] [stdout] 26 | use product_os_server::{ BodyBytes, BodyError, Bytes, Full };
[INFO] [stdout]    |                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::string::FromUtf8Error`
[INFO] [stdout]  --> src/socket_connection.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::string::FromUtf8Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ProductOSRouterError` and `Response`
[INFO] [stdout]   --> src/socket_connection.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 |     State, Response, ProductOSRouterError, connect_info::ConnectInfo, TypedHeader, RequestData, IntoResponse
[INFO] [stdout]    |            ^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `headers::HeaderValue`
[INFO] [stdout]   --> src/socket_connection.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use headers::HeaderValue;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::Value`
[INFO] [stdout]   --> src/socket_connection.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | use serde_json::Value;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/client/driver.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::future::Future`
[INFO] [stdout]  --> src/client/socket.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::future::Future;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::num::TryFromIntError`
[INFO] [stdout]  --> src/client/socket.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::num::TryFromIntError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parking_lot::lock_api::MutexGuard`
[INFO] [stdout]   --> src/client/socket.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use parking_lot::lock_api::MutexGuard;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RawMutex`
[INFO] [stdout]   --> src/client/socket.rs:11:26
[INFO] [stdout]    |
[INFO] [stdout] 11 | use parking_lot::{Mutex, RawMutex};
[INFO] [stdout]    |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProductOSRouter`
[INFO] [stdout]   --> src/client/socket.rs:15:43
[INFO] [stdout]    |
[INFO] [stdout] 15 | use product_os_server::{ ProductOSServer, ProductOSRouter };
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]   --> src/client/socket.rs:17:18
[INFO] [stdout]    |
[INFO] [stdout] 17 | use serde_json::{Error, Value};
[INFO] [stdout]    |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParseError`
[INFO] [stdout]   --> src/client/socket.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | use url::{ParseError, Url};
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Body`, `HeaderName`, `HeaderValue`, `ProductOSResponse`, and `Uri`
[INFO] [stdout]  --> src/helper.rs:4:37
[INFO] [stdout]   |
[INFO] [stdout] 4 | use product_os_request::{HeaderMap, HeaderName, HeaderValue, Method, ProductOSResponse, StatusCode, Uri, Body };
[INFO] [stdout]   |                                     ^^^^^^^^^^  ^^^^^^^^^^^          ^^^^^^^^^^^^^^^^^              ^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RegistryFeature`
[INFO] [stdout]   --> src/lib.rs:20:57
[INFO] [stdout]    |
[INFO] [stdout] 20 | use product_os_capabilities::{RegistryService, Service, RegistryFeature, Feature};
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parking_lot::lock_api::MutexGuard`
[INFO] [stdout]   --> src/lib.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use parking_lot::lock_api::MutexGuard;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NetworkProxyCertificateAuthorityFiles`
[INFO] [stdout]   --> src/lib.rs:27:45
[INFO] [stdout]    |
[INFO] [stdout] 27 | use product_os_configuration::{BrowserMode, NetworkProxyCertificateAuthorityFiles};
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thirtyfour::error::WebDriverError`
[INFO] [stdout]   --> src/lib.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | use thirtyfour::error::WebDriverError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SocketConnectionServer`
[INFO] [stdout]   --> src/lib.rs:53:33
[INFO] [stdout]    |
[INFO] [stdout] 53 | use crate::socket_connection::{ SocketConnectionServer, SocketConnectionClient };
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:184:21
[INFO] [stdout]     |
[INFO] [stdout] 184 |                 let mut client: Arc<dyn WebClient> = match self.config.mode {
[INFO] [stdout]     |                     ----^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:204:17
[INFO] [stdout]     |
[INFO] [stdout] 204 |             let mut client: Arc<dyn WebClient> = match self.config.mode {
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/element.rs:152:46
[INFO] [stdout]     |
[INFO] [stdout] 152 |                     sxd_xpath::Value::String(s) => {
[INFO] [stdout]     |                                              ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/element.rs:321:18
[INFO] [stdout]     |
[INFO] [stdout] 321 |             Some(mut page_locked) => {
[INFO] [stdout]     |                  ----^^^^^^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `search`
[INFO] [stdout]    --> src/element.rs:330:41
[INFO] [stdout]     |
[INFO] [stdout] 330 |     pub async fn take_screenshot(&self, search: String, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<Vec<u8>, P...
[INFO] [stdout]     |                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_search`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `search_kind`
[INFO] [stdout]    --> src/element.rs:330:57
[INFO] [stdout]     |
[INFO] [stdout] 330 | ...(&self, search: String, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<Vec<u8>, ProductOSError> {
[INFO] [stdout]     |                            ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_search_kind`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `which`
[INFO] [stdout]    --> src/element.rs:330:82
[INFO] [stdout]     |
[INFO] [stdout] 330 | ...ing, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<Vec<u8>, ProductOSError> {
[INFO] [stdout]     |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_which`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/element.rs:337:18
[INFO] [stdout]     |
[INFO] [stdout] 337 |             Some(mut page_locked) => {
[INFO] [stdout]     |                  ----^^^^^^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `search`
[INFO] [stdout]    --> src/element.rs:346:35
[INFO] [stdout]     |
[INFO] [stdout] 346 |     pub async fn scroll_to(&self, search: String, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<(), ProductOSErr...
[INFO] [stdout]     |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_search`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `search_kind`
[INFO] [stdout]    --> src/element.rs:346:51
[INFO] [stdout]     |
[INFO] [stdout] 346 | ...(&self, search: String, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<(), ProductOSError> {
[INFO] [stdout]     |                            ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_search_kind`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `which`
[INFO] [stdout]    --> src/element.rs:346:76
[INFO] [stdout]     |
[INFO] [stdout] 346 | ...ing, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<(), ProductOSError> {
[INFO] [stdout]     |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_which`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/element.rs:353:18
[INFO] [stdout]     |
[INFO] [stdout] 353 |             Some(mut page_locked) => {
[INFO] [stdout]     |                  ----^^^^^^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `search`
[INFO] [stdout]    --> src/element.rs:362:41
[INFO] [stdout]     |
[INFO] [stdout] 362 |     pub async fn focus_on_iframe(&self, search: String, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<(), Produc...
[INFO] [stdout]     |                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_search`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `search_kind`
[INFO] [stdout]    --> src/element.rs:362:57
[INFO] [stdout]     |
[INFO] [stdout] 362 | ...(&self, search: String, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<(), ProductOSError> {
[INFO] [stdout]     |                            ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_search_kind`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `which`
[INFO] [stdout]    --> src/element.rs:362:82
[INFO] [stdout]     |
[INFO] [stdout] 362 | ...ing, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<(), ProductOSError> {
[INFO] [stdout]     |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_which`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/element.rs:369:18
[INFO] [stdout]     |
[INFO] [stdout] 369 |             Some(mut page_locked) => {
[INFO] [stdout]     |                  ----^^^^^^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/element.rs:388:18
[INFO] [stdout]     |
[INFO] [stdout] 388 |             Some(mut page_locked) => {
[INFO] [stdout]     |                  ----^^^^^^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/element.rs:407:18
[INFO] [stdout]     |
[INFO] [stdout] 407 |             Some(mut page_locked) => {
[INFO] [stdout]     |                  ----^^^^^^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/element.rs:426:18
[INFO] [stdout]     |
[INFO] [stdout] 426 |             Some(mut page_locked) => {
[INFO] [stdout]     |                  ----^^^^^^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/element.rs:446:18
[INFO] [stdout]     |
[INFO] [stdout] 446 |             Some(mut page_locked) => {
[INFO] [stdout]     |                  ----^^^^^^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/page.rs:268:62
[INFO] [stdout]     |
[INFO] [stdout] 268 | ...                   sxd_xpath::Value::String(s) => {
[INFO] [stdout]     |                                                ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/proxy_middleware_handler.rs:288:113
[INFO] [stdout]     |
[INFO] [stdout] 288 | ...   tracing::debug!("Failed to convert bytes to string - after: {:?}, position of error: {}", error.description(), error.valid_up_to());
[INFO] [stdout]     |                                                                                                       ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/proxy_middleware_handler.rs:283:16
[INFO] [stdout]     |
[INFO] [stdout] 283 |             Ok(mut contents) => {
[INFO] [stdout]     |                ----^^^^^^^^
[INFO] [stdout]     |                |
[INFO] [stdout]     |                help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content_length`
[INFO] [stdout]    --> src/proxy_middleware_handler.rs:302:16
[INFO] [stdout]     |
[INFO] [stdout] 302 |             Ok(content_length) => {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content_length`
[INFO] [stdout]    --> src/proxy_middleware_handler.rs:316:16
[INFO] [stdout]     |
[INFO] [stdout] 316 |             Ok(content_length) => {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/actor.rs:69:35
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub async fn handle_scrolling(mut page: Page, config: product_os_configuration::Browser,
[INFO] [stdout]    |                                   ----^^^^
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/actor.rs:189:39
[INFO] [stdout]     |
[INFO] [stdout] 189 |     pub async fn handle_button_clicks(mut page: Page, config: product_os_configuration::Browser,
[INFO] [stdout]     |                                       ----^^^^
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/actor.rs:252:29
[INFO] [stdout]     |
[INFO] [stdout] 252 |                         let mut button = button.clone();
[INFO] [stdout]     |                             ----^^^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/action.rs:278:37
[INFO] [stdout]     |
[INFO] [stdout] 278 | ...                   Err(e) => {
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]    --> src/socket_connection.rs:152:36
[INFO] [stdout]     |
[INFO] [stdout] 152 | async fn pinger(sender_id: String, address: SocketAddr, socket_manager: Arc<SocketConnectionServer>) {
[INFO] [stdout]     |                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `user_agent`
[INFO] [stdout]   --> src/socket_connection.rs:52:47
[INFO] [stdout]    |
[INFO] [stdout] 52 | async fn handle_socket(mut socket: WebSocket, user_agent: Option<TypedHeader<headers::UserAgent>>,
[INFO] [stdout]    |                                               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_user_agent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/socket_connection.rs:84:82
[INFO] [stdout]    |
[INFO] [stdout] 84 | ...                   let (mut sender, mut receiver) = socket.split();
[INFO] [stdout]    |                            ----^^^^^^
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/socket_connection.rs:84:94
[INFO] [stdout]    |
[INFO] [stdout] 84 | ...                   let (mut sender, mut receiver) = socket.split();
[INFO] [stdout]    |                                        ----^^^^^^^^
[INFO] [stdout]    |                                        |
[INFO] [stdout]    |                                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sender`
[INFO] [stdout]    --> src/socket_connection.rs:168:17
[INFO] [stdout]     |
[INFO] [stdout] 168 | async fn writer(sender: SplitSink<WebSocket, Message>, address: SocketAddr, socket_manager: Arc<SocketConnectionServer>) {
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]    --> src/socket_connection.rs:168:56
[INFO] [stdout]     |
[INFO] [stdout] 168 | async fn writer(sender: SplitSink<WebSocket, Message>, address: SocketAddr, socket_manager: Arc<SocketConnectionServer>) {
[INFO] [stdout]     |                                                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `socket_manager`
[INFO] [stdout]    --> src/socket_connection.rs:168:77
[INFO] [stdout]     |
[INFO] [stdout] 168 | async fn writer(sender: SplitSink<WebSocket, Message>, address: SocketAddr, socket_manager: Arc<SocketConnectionServer>) {
[INFO] [stdout]     |                                                                             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `server_process` is never read
[INFO] [stdout]    --> src/client/socket.rs:101:17
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let mut server_process = None;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `browser_name`
[INFO] [stdout]    --> src/client/socket.rs:104:39
[INFO] [stdout]     |
[INFO] [stdout] 104 |             Ok((server_port, process, browser_name)) => {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_browser_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content_type`
[INFO] [stdout]    --> src/client/socket.rs:210:41
[INFO] [stdout]     |
[INFO] [stdout] 210 | ...                   Ok((result, content_type)) => {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `actors` on type `Browser`
[INFO] [stdout]   --> src/processor.rs:27:57
[INFO] [stdout]    |
[INFO] [stdout] 27 |             actors: Some(Actors::new_from_config(config.actors))
[INFO] [stdout]    |                                                         ^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `mode`, `debug`, `head_check`, `document_matcher`, `max_success_clicks` ... and 61 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0063]: missing field `db_name` in initializer of `KeyValueStore`
[INFO] [stdout]    --> src/lib.rs:102:30
[INFO] [stdout]     |
[INFO] [stdout] 102 |                 let config = product_os_configuration::KeyValueStore {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing `db_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Feature`
[INFO] [stdout]   --> src/lib.rs:20:74
[INFO] [stdout]    |
[INFO] [stdout] 20 | use product_os_capabilities::{RegistryService, Service, RegistryFeature, Feature};
[INFO] [stdout]    |                                                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/page.rs:129:18
[INFO] [stdout]     |
[INFO] [stdout] 129 |             Some(mut page_locked) => Ok(page_locked.page_raw.to_owned())
[INFO] [stdout]     |                  ----^^^^^^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/page.rs:182:18
[INFO] [stdout]     |
[INFO] [stdout] 182 |             Some(mut page_locked) => { Ok(page_locked.request_url.to_owned()) }
[INFO] [stdout]     |                  ----^^^^^^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/page.rs:194:18
[INFO] [stdout]     |
[INFO] [stdout] 194 |             Some(mut page_locked) => { Ok(page_locked.response_url.to_owned()) }
[INFO] [stdout]     |                  ----^^^^^^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kind`
[INFO] [stdout]    --> src/proxy_middleware_handler.rs:697:17
[INFO] [stdout]     |
[INFO] [stdout] 697 |             let kind = filter.0.as_str();
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_kind`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header_matcher`
[INFO] [stdout]    --> src/proxy_middleware_handler.rs:698:17
[INFO] [stdout]     |
[INFO] [stdout] 698 |             let header_matcher = filter.1;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_header_matcher`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query_parts`
[INFO] [stdout]    --> src/proxy_middleware_handler.rs:796:13
[INFO] [stdout]     |
[INFO] [stdout] 796 |         let query_parts = query_string_to_object(query.to_string(), false, false);
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_query_parts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request_id`
[INFO] [stdout]    --> src/proxy_middleware_handler.rs:809:13
[INFO] [stdout]     |
[INFO] [stdout] 809 |         let request_id = match request_data.headers.get("RequestID") {
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content_type`
[INFO] [stdout]    --> src/proxy_middleware_handler.rs:854:21
[INFO] [stdout]     |
[INFO] [stdout] 854 |                 let content_type = content_type_string.as_str();
[INFO] [stdout]     |                     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `content_compression` is never read
[INFO] [stdout]    --> src/proxy_middleware_handler.rs:856:25
[INFO] [stdout]     |
[INFO] [stdout] 856 |                 let mut content_compression = String::from("none");
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/proxy_middleware_handler.rs:946:40
[INFO] [stdout]     |
[INFO] [stdout] 946 | ...                   Ok(value) => {}
[INFO] [stdout]     |                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kind`
[INFO] [stdout]     --> src/proxy_middleware_handler.rs:1063:17
[INFO] [stdout]      |
[INFO] [stdout] 1063 |             let kind = filter.0.as_str();
[INFO] [stdout]      |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_kind`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header_matcher`
[INFO] [stdout]     --> src/proxy_middleware_handler.rs:1064:17
[INFO] [stdout]      |
[INFO] [stdout] 1064 |             let header_matcher = filter.1;
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_header_matcher`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/proxy_middleware_handler.rs:859:25
[INFO] [stdout]     |
[INFO] [stdout] 859 |                     (Ok(mut contents), compression) => {
[INFO] [stdout]     |                         ----^^^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/proxy_middleware_handler.rs:1114:13
[INFO] [stdout]      |
[INFO] [stdout] 1114 |         let mut headers = response.get_headers();
[INFO] [stdout]      |             ----^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/proxy_middleware_handler.rs:1116:13
[INFO] [stdout]      |
[INFO] [stdout] 1116 |         let mut body_bytes = match self.requester.bytes(response).await {
[INFO] [stdout]      |             ----^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/proxy_middleware_handler.rs:1120:13
[INFO] [stdout]      |
[INFO] [stdout] 1120 |         let mut response_body = BodyBytes::from(Full::new(Bytes::from(body_bytes.clone())));
[INFO] [stdout]      |             ----^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request_data`
[INFO] [stdout]     --> src/proxy_middleware_handler.rs:1142:55
[INFO] [stdout]      |
[INFO] [stdout] 1142 |     async fn success(&self, response: Response<Body>, request_data: RequestData) -> Response<Body> {
[INFO] [stdout]      |                                                       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request_data`
[INFO] [stdout]     --> src/proxy_middleware_handler.rs:1146:55
[INFO] [stdout]      |
[INFO] [stdout] 1146 |     async fn failure(&self, response: Response<Body>, request_data: RequestData) -> Response<Body> {
[INFO] [stdout]      |                                                       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/action.rs:81:21
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 let mut result = String::new();
[INFO] [stdout]    |                     ----^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]   --> src/processor.rs:54:38
[INFO] [stdout]    |
[INFO] [stdout] 54 |     async fn try_new_download(&self, request: Request, browser: Arc<ProductOSBrowser>) {}
[INFO] [stdout]    |                                      ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `browser`
[INFO] [stdout]   --> src/processor.rs:54:56
[INFO] [stdout]    |
[INFO] [stdout] 54 |     async fn try_new_download(&self, request: Request, browser: Arc<ProductOSBrowser>) {}
[INFO] [stdout]    |                                                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_browser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/socket_connection.rs:224:18
[INFO] [stdout]     |
[INFO] [stdout] 224 |             Some(mut active_sender_locked) => { Ok(active_sender_locked.to_owned()) }
[INFO] [stdout]     |                  ----^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input_agent`
[INFO] [stdout]    --> src/socket_connection.rs:385:30
[INFO] [stdout]     |
[INFO] [stdout] 385 |     fn set_user_agent(&self, input_agent: &str) -> Option<String> {
[INFO] [stdout]     |                              ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_agent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status`
[INFO] [stdout]    --> src/socket_connection.rs:389:41
[INFO] [stdout]     |
[INFO] [stdout] 389 |     async fn alter_text_response(&self, status: &mut StatusCode, headers: &mut HeaderMap, contents: &mut String, request_data: &RequestDa...
[INFO] [stdout]     |                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `headers`
[INFO] [stdout]    --> src/socket_connection.rs:389:66
[INFO] [stdout]     |
[INFO] [stdout] 389 | ...f, status: &mut StatusCode, headers: &mut HeaderMap, contents: &mut String, request_data: &RequestData) -> Result<(), ()> {
[INFO] [stdout]     |                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_headers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `contents`
[INFO] [stdout]    --> src/socket_connection.rs:389:91
[INFO] [stdout]     |
[INFO] [stdout] 389 | ..., headers: &mut HeaderMap, contents: &mut String, request_data: &RequestData) -> Result<(), ()> {
[INFO] [stdout]     |                               ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_contents`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request_data`
[INFO] [stdout]    --> src/socket_connection.rs:389:114
[INFO] [stdout]     |
[INFO] [stdout] 389 | ...contents: &mut String, request_data: &RequestData) -> Result<(), ()> {
[INFO] [stdout]     |                           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status`
[INFO] [stdout]    --> src/socket_connection.rs:393:40
[INFO] [stdout]     |
[INFO] [stdout] 393 |     async fn alter_raw_response(&self, status: &mut StatusCode, headers: &mut HeaderMap, body: &mut Vec<u8>, request_data: &RequestData) ...
[INFO] [stdout]     |                                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `headers`
[INFO] [stdout]    --> src/socket_connection.rs:393:65
[INFO] [stdout]     |
[INFO] [stdout] 393 | ...f, status: &mut StatusCode, headers: &mut HeaderMap, body: &mut Vec<u8>, request_data: &RequestData) -> Result<(), ()> {
[INFO] [stdout]     |                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_headers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]    --> src/socket_connection.rs:393:90
[INFO] [stdout]     |
[INFO] [stdout] 393 | ...Code, headers: &mut HeaderMap, body: &mut Vec<u8>, request_data: &RequestData) -> Result<(), ()> {
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request_data`
[INFO] [stdout]    --> src/socket_connection.rs:393:110
[INFO] [stdout]     |
[INFO] [stdout] 393 | ...p, body: &mut Vec<u8>, request_data: &RequestData) -> Result<(), ()> {
[INFO] [stdout]     |                           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `uri`
[INFO] [stdout]    --> src/socket_connection.rs:397:35
[INFO] [stdout]     |
[INFO] [stdout] 397 |     async fn alter_request(&self, uri: &mut String, method: &mut Method, headers: &mut HeaderMap, body: &mut Vec<u8>) -> Result<(), ()> {
[INFO] [stdout]     |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_uri`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `method`
[INFO] [stdout]    --> src/socket_connection.rs:397:53
[INFO] [stdout]     |
[INFO] [stdout] 397 |     async fn alter_request(&self, uri: &mut String, method: &mut Method, headers: &mut HeaderMap, body: &mut Vec<u8>) -> Result<(), ()> {
[INFO] [stdout]     |                                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_method`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `headers`
[INFO] [stdout]    --> src/socket_connection.rs:397:74
[INFO] [stdout]     |
[INFO] [stdout] 397 |     async fn alter_request(&self, uri: &mut String, method: &mut Method, headers: &mut HeaderMap, body: &mut Vec<u8>) -> Result<(), ()> {
[INFO] [stdout]     |                                                                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_headers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]    --> src/socket_connection.rs:397:99
[INFO] [stdout]     |
[INFO] [stdout] 397 |     async fn alter_request(&self, uri: &mut String, method: &mut Method, headers: &mut HeaderMap, body: &mut Vec<u8>) -> Result<(), ()> {
[INFO] [stdout]     |                                                                                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input_agent`
[INFO] [stdout]     --> src/socket_connection.rs:1644:30
[INFO] [stdout]      |
[INFO] [stdout] 1644 |     fn set_user_agent(&self, input_agent: &str) -> Option<String> {
[INFO] [stdout]      |                              ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_agent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status`
[INFO] [stdout]     --> src/socket_connection.rs:1741:40
[INFO] [stdout]      |
[INFO] [stdout] 1741 |     async fn alter_raw_response(&self, status: &mut StatusCode, headers: &mut HeaderMap, body: &mut Vec<u8>, request_data: &RequestData) ...
[INFO] [stdout]      |                                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `headers`
[INFO] [stdout]     --> src/socket_connection.rs:1741:65
[INFO] [stdout]      |
[INFO] [stdout] 1741 | ...f, status: &mut StatusCode, headers: &mut HeaderMap, body: &mut Vec<u8>, request_data: &RequestData) -> Result<(), ()> {
[INFO] [stdout]      |                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_headers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]     --> src/socket_connection.rs:1741:90
[INFO] [stdout]      |
[INFO] [stdout] 1741 | ...Code, headers: &mut HeaderMap, body: &mut Vec<u8>, request_data: &RequestData) -> Result<(), ()> {
[INFO] [stdout]      |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request_data`
[INFO] [stdout]     --> src/socket_connection.rs:1741:110
[INFO] [stdout]      |
[INFO] [stdout] 1741 | ...p, body: &mut Vec<u8>, request_data: &RequestData) -> Result<(), ()> {
[INFO] [stdout]      |                           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `uri`
[INFO] [stdout]     --> src/socket_connection.rs:1745:35
[INFO] [stdout]      |
[INFO] [stdout] 1745 |     async fn alter_request(&self, uri: &mut String, method: &mut Method, headers: &mut HeaderMap, body: &mut Vec<u8>) -> Result<(), ()> {
[INFO] [stdout]      |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_uri`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `method`
[INFO] [stdout]     --> src/socket_connection.rs:1745:53
[INFO] [stdout]      |
[INFO] [stdout] 1745 |     async fn alter_request(&self, uri: &mut String, method: &mut Method, headers: &mut HeaderMap, body: &mut Vec<u8>) -> Result<(), ()> {
[INFO] [stdout]      |                                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_method`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `headers`
[INFO] [stdout]     --> src/socket_connection.rs:1745:74
[INFO] [stdout]      |
[INFO] [stdout] 1745 |     async fn alter_request(&self, uri: &mut String, method: &mut Method, headers: &mut HeaderMap, body: &mut Vec<u8>) -> Result<(), ()> {
[INFO] [stdout]      |                                                                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_headers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]     --> src/socket_connection.rs:1745:99
[INFO] [stdout]      |
[INFO] [stdout] 1745 |     async fn alter_request(&self, uri: &mut String, method: &mut Method, headers: &mut HeaderMap, body: &mut Vec<u8>) -> Result<(), ()> {
[INFO] [stdout]      |                                                                                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `page`
[INFO] [stdout]     --> src/client/driver.rs:1525:48
[INFO] [stdout]      |
[INFO] [stdout] 1525 | ...                   Ok(page) => {
[INFO] [stdout]      |                          ^^^^ help: if this is intentional, prefix it with an underscore: `_page`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `curl`
[INFO] [stdout]     --> src/client/driver.rs:1528:56
[INFO] [stdout]      |
[INFO] [stdout] 1528 | ...                   Ok(curl) => {
[INFO] [stdout]      |                          ^^^^ help: if this is intentional, prefix it with an underscore: `_curl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `page`
[INFO] [stdout]     --> src/client/driver.rs:1619:48
[INFO] [stdout]      |
[INFO] [stdout] 1619 | ...                   Ok(page) => {
[INFO] [stdout]      |                          ^^^^ help: if this is intentional, prefix it with an underscore: `_page`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `curl`
[INFO] [stdout]     --> src/client/driver.rs:1622:56
[INFO] [stdout]      |
[INFO] [stdout] 1622 | ...                   Ok(curl) => {
[INFO] [stdout]      |                          ^^^^ help: if this is intentional, prefix it with an underscore: `_curl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `page`
[INFO] [stdout]     --> src/client/driver.rs:1713:48
[INFO] [stdout]      |
[INFO] [stdout] 1713 | ...                   Ok(page) => {
[INFO] [stdout]      |                          ^^^^ help: if this is intentional, prefix it with an underscore: `_page`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `curl`
[INFO] [stdout]     --> src/client/driver.rs:1716:56
[INFO] [stdout]      |
[INFO] [stdout] 1716 | ...                   Ok(curl) => {
[INFO] [stdout]      |                          ^^^^ help: if this is intentional, prefix it with an underscore: `_curl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `page`
[INFO] [stdout]     --> src/client/driver.rs:1812:48
[INFO] [stdout]      |
[INFO] [stdout] 1812 | ...                   Ok(page) => {
[INFO] [stdout]      |                          ^^^^ help: if this is intentional, prefix it with an underscore: `_page`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `curl`
[INFO] [stdout]     --> src/client/driver.rs:1815:56
[INFO] [stdout]      |
[INFO] [stdout] 1815 | ...                   Ok(curl) => {
[INFO] [stdout]      |                          ^^^^ help: if this is intentional, prefix it with an underscore: `_curl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/client/socket.rs:563:17
[INFO] [stdout]     |
[INFO] [stdout] 563 |             Ok((mut s, p)) => {
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content_type`
[INFO] [stdout]    --> src/client/socket.rs:655:40
[INFO] [stdout]     |
[INFO] [stdout] 655 | ...                   Ok((value, content_type)) => {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content_type`
[INFO] [stdout]    --> src/client/socket.rs:838:37
[INFO] [stdout]     |
[INFO] [stdout] 838 |                     Ok((url_result, content_type)) => {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content_type`
[INFO] [stdout]    --> src/client/socket.rs:850:46
[INFO] [stdout]     |
[INFO] [stdout] 850 | ...                   Ok((page_result, content_type)) => {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content_type`
[INFO] [stdout]    --> src/client/socket.rs:889:37
[INFO] [stdout]     |
[INFO] [stdout] 889 |                     Ok((url_result, content_type)) => {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content_type`
[INFO] [stdout]    --> src/client/socket.rs:901:46
[INFO] [stdout]     |
[INFO] [stdout] 901 | ...                   Ok((page_result, content_type)) => {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `script`
[INFO] [stdout]     --> src/client/socket.rs:1228:47
[INFO] [stdout]      |
[INFO] [stdout] 1228 |     async fn execute_script_for_result(&self, script: String, args: Vec<serde_json::Value>) -> Result<serde_json::Value, ProductOSError> {
[INFO] [stdout]      |                                               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_script`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]     --> src/client/socket.rs:1228:63
[INFO] [stdout]      |
[INFO] [stdout] 1228 |     async fn execute_script_for_result(&self, script: String, args: Vec<serde_json::Value>) -> Result<serde_json::Value, ProductOSError> {
[INFO] [stdout]      |                                                               ^^^^ help: if this is intentional, prefix it with an underscore: `_args`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]     --> src/client/socket.rs:1232:61
[INFO] [stdout]      |
[INFO] [stdout] 1232 |     async fn execute_script_for_page(&self, script: String, args: Vec<serde_json::Value>) -> Result<(), ProductOSError> {
[INFO] [stdout]      |                                                             ^^^^ help: if this is intentional, prefix it with an underscore: `_args`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `search`
[INFO] [stdout]     --> src/client/socket.rs:1358:37
[INFO] [stdout]      |
[INFO] [stdout] 1358 |     async fn focus_on_iframe(&self, search: String, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<(), ProductOSE...
[INFO] [stdout]      |                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_search`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `search_kind`
[INFO] [stdout]     --> src/client/socket.rs:1358:53
[INFO] [stdout]      |
[INFO] [stdout] 1358 | ...(&self, search: String, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<(), ProductOSError> {
[INFO] [stdout]      |                            ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_search_kind`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `which`
[INFO] [stdout]     --> src/client/socket.rs:1358:78
[INFO] [stdout]      |
[INFO] [stdout] 1358 | ...ing, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<(), ProductOSError> {
[INFO] [stdout]      |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_which`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `behaviour`
[INFO] [stdout]     --> src/client/socket.rs:1358:92
[INFO] [stdout]      |
[INFO] [stdout] 1358 | ...SearchKind, which: usize, behaviour: Behaviour) -> Result<(), ProductOSError> {
[INFO] [stdout]      |                              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_behaviour`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `search`
[INFO] [stdout]     --> src/client/socket.rs:1362:37
[INFO] [stdout]      |
[INFO] [stdout] 1362 |     async fn take_screenshot(&self, search: String, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<Vec<u8>, Produ...
[INFO] [stdout]      |                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_search`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `search_kind`
[INFO] [stdout]     --> src/client/socket.rs:1362:53
[INFO] [stdout]      |
[INFO] [stdout] 1362 | ...(&self, search: String, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<Vec<u8>, ProductOSError> {
[INFO] [stdout]      |                            ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_search_kind`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `which`
[INFO] [stdout]     --> src/client/socket.rs:1362:78
[INFO] [stdout]      |
[INFO] [stdout] 1362 | ...ing, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<Vec<u8>, ProductOSError> {
[INFO] [stdout]      |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_which`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `behaviour`
[INFO] [stdout]     --> src/client/socket.rs:1362:92
[INFO] [stdout]      |
[INFO] [stdout] 1362 | ...SearchKind, which: usize, behaviour: Behaviour) -> Result<Vec<u8>, ProductOSError> {
[INFO] [stdout]      |                              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_behaviour`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `search`
[INFO] [stdout]     --> src/client/socket.rs:1489:36
[INFO] [stdout]      |
[INFO] [stdout] 1489 |     async fn click_and_hold(&self, search: String, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<(), ProductOSEr...
[INFO] [stdout]      |                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_search`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `search_kind`
[INFO] [stdout]     --> src/client/socket.rs:1489:52
[INFO] [stdout]      |
[INFO] [stdout] 1489 | ...(&self, search: String, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<(), ProductOSError> {
[INFO] [stdout]      |                            ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_search_kind`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `which`
[INFO] [stdout]     --> src/client/socket.rs:1489:77
[INFO] [stdout]      |
[INFO] [stdout] 1489 | ...ing, search_kind: SearchKind, which: usize, behaviour: Behaviour) -> Result<(), ProductOSError> {
[INFO] [stdout]      |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_which`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `behaviour`
[INFO] [stdout]     --> src/client/socket.rs:1489:91
[INFO] [stdout]      |
[INFO] [stdout] 1489 | ...SearchKind, which: usize, behaviour: Behaviour) -> Result<(), ProductOSError> {
[INFO] [stdout]      |                              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_behaviour`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `behaviour`
[INFO] [stdout]     --> src/client/socket.rs:1493:29
[INFO] [stdout]      |
[INFO] [stdout] 1493 |     async fn release(&self, behaviour: Behaviour) -> Result<(), ProductOSError> {
[INFO] [stdout]      |                             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_behaviour`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `search`
[INFO] [stdout]     --> src/client/socket.rs:1952:37
[INFO] [stdout]      |
[INFO] [stdout] 1952 |     async fn select_by_xpath(&self, search: String, search_kind: SearchKind, which: usize, xpath_bracket_query: String, behaviour: Behavi...
[INFO] [stdout]      |                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_search`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `search_kind`
[INFO] [stdout]     --> src/client/socket.rs:1952:53
[INFO] [stdout]      |
[INFO] [stdout] 1952 | ...(&self, search: String, search_kind: SearchKind, which: usize, xpath_bracket_query: String, behaviour: Behaviour) -> Result<(), Produc...
[INFO] [stdout]      |                            ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_search_kind`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `which`
[INFO] [stdout]     --> src/client/socket.rs:1952:78
[INFO] [stdout]      |
[INFO] [stdout] 1952 | ...ing, search_kind: SearchKind, which: usize, xpath_bracket_query: String, behaviour: Behaviour) -> Result<(), ProductOSError> {
[INFO] [stdout]      |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_which`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xpath_bracket_query`
[INFO] [stdout]     --> src/client/socket.rs:1952:92
[INFO] [stdout]      |
[INFO] [stdout] 1952 | ..., which: usize, xpath_bracket_query: String, behaviour: Behaviour) -> Result<(), ProductOSError> {
[INFO] [stdout]      |                    ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_xpath_bracket_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `behaviour`
[INFO] [stdout]     --> src/client/socket.rs:1952:121
[INFO] [stdout]      |
[INFO] [stdout] 1952 | ...th_bracket_query: String, behaviour: Behaviour) -> Result<(), ProductOSError> {
[INFO] [stdout]      |                              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_behaviour`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position`
[INFO] [stdout]     --> src/client/socket.rs:2007:47
[INFO] [stdout]      |
[INFO] [stdout] 2007 |     async fn switch_window_by_position(&self, position: usize) -> Result<(), ProductOSError> {
[INFO] [stdout]      |                                               ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `behaviour`
[INFO] [stdout]     --> src/client/socket.rs:2072:87
[INFO] [stdout]      |
[INFO] [stdout] 2072 | ...SearchKind, which: usize, behaviour: Behaviour) -> Result<bool, ProductOSError> {
[INFO] [stdout]      |                              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_behaviour`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `behaviour`
[INFO] [stdout]     --> src/client/socket.rs:2107:88
[INFO] [stdout]      |
[INFO] [stdout] 2107 | ...SearchKind, which: usize, behaviour: Behaviour) -> Result<bool, ProductOSError> {
[INFO] [stdout]      |                              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_behaviour`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `behaviour`
[INFO] [stdout]     --> src/client/socket.rs:2142:89
[INFO] [stdout]      |
[INFO] [stdout] 2142 | ...SearchKind, which: usize, behaviour: Behaviour) -> Result<bool, ProductOSError> {
[INFO] [stdout]      |                              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_behaviour`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `behaviour`
[INFO] [stdout]     --> src/client/socket.rs:2177:87
[INFO] [stdout]      |
[INFO] [stdout] 2177 | ...SearchKind, which: usize, behaviour: Behaviour) -> Result<bool, ProductOSError> {
[INFO] [stdout]      |                              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_behaviour`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proxy`
[INFO] [stdout]    --> src/lib.rs:295:18
[INFO] [stdout]     |
[INFO] [stdout] 295 |             Some(proxy) => {}
[INFO] [stdout]     |                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_proxy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]    --> src/lib.rs:790:42
[INFO] [stdout]     |
[INFO] [stdout] 790 |     async fn try_new_download(&mut self, request: Request) {}
[INFO] [stdout]     |                                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `service`
[INFO] [stdout]     --> src/lib.rs:1005:30
[INFO] [stdout]      |
[INFO] [stdout] 1005 |     async fn register(&self, service: Arc<dyn Service>) -> RegistryService {
[INFO] [stdout]      |                              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_service`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0063, E0432, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0063`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `product-os-browser` (lib) due to 4 previous errors; 150 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "ff7cfbd500051f38df49cf1dafe29313ee28014853e76ca6cd501194bd659e9d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ff7cfbd500051f38df49cf1dafe29313ee28014853e76ca6cd501194bd659e9d", kill_on_drop: false }`
[INFO] [stdout] ff7cfbd500051f38df49cf1dafe29313ee28014853e76ca6cd501194bd659e9d
