[INFO] cloning repository https://github.com/tomjakubowski/lspweb
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tomjakubowski/lspweb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftomjakubowski%2Flspweb", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftomjakubowski%2Flspweb'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 846543d91b2a49affa83d98470718729c622dc9c
[INFO] testing tomjakubowski/lspweb against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftomjakubowski%2Flspweb" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/tomjakubowski/lspweb
[INFO] finished tweaking git repo https://github.com/tomjakubowski/lspweb
[INFO] tweaked toml for git repo https://github.com/tomjakubowski/lspweb written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tomjakubowski/lspweb on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/tomjakubowski/lspweb 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.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tungstenite v0.9.1
[INFO] [stderr]   Downloaded sha-1 v0.8.1
[INFO] [stderr]   Downloaded block-padding v0.1.4
[INFO] [stderr]   Downloaded libc v0.2.62
[INFO] [stderr]   Downloaded bitflags v1.2.0
[INFO] [stderr]   Downloaded iovec v0.1.3
[INFO] [stderr]   Downloaded tokio-threadpool v0.1.16
[INFO] [stderr]   Downloaded crossbeam-deque v0.7.1
[INFO] [stderr]   Downloaded memoffset v0.5.1
[INFO] [stderr]   Downloaded crossbeam-epoch v0.7.2
[INFO] [stderr]   Downloaded arrayvec v0.4.11
[INFO] [stderr]   Downloaded tokio-sync v0.1.6
[INFO] [stderr]   Downloaded ryu v1.0.0
[INFO] [stderr]   Downloaded safemem v0.3.2
[INFO] [stderr]   Downloaded unicase v2.5.1
[INFO] [stderr]   Downloaded unic-ucd-segment v0.9.0
[INFO] [stderr]   Downloaded tera v1.0.0-beta.16
[INFO] [stderr]   Downloaded unic-segment v0.9.0
[INFO] [stderr]   Downloaded slug v0.1.4
[INFO] [stderr]   Downloaded deunicode v0.4.3
[INFO] [stderr]   Downloaded pest_generator v2.1.1
[INFO] [stderr]   Downloaded pest v2.1.2
[INFO] [stderr]   Downloaded ucd-trie v0.1.2
[INFO] [stderr]   Downloaded pest_meta v2.1.2
[INFO] [stderr]   Downloaded winapi-util v0.1.2
[INFO] [stderr]   Downloaded humansize v1.1.0
[INFO] [stderr]   Downloaded globwalk v0.7.1
[INFO] [stderr]   Downloaded walkdir v2.2.9
[INFO] [stderr]   Downloaded ignore v0.4.10
[INFO] [stderr]   Downloaded globset v0.4.4
[INFO] [stderr]   Downloaded same-file v1.0.5
[INFO] [stderr]   Downloaded parse-zoneinfo v0.2.0
[INFO] [stderr]   Downloaded bstr v0.2.8
[INFO] [stderr]   Downloaded chrono-tz v0.5.1
[INFO] [stderr]   Downloaded serde_repr v0.1.5
[INFO] [stderr]   Downloaded termcolor v1.0.5
[INFO] [stderr]   Downloaded lsp-types v0.61.0
[INFO] [stderr]   Downloaded env_logger v0.7.0
[INFO] [stderr]   Downloaded wincolor v1.0.2
[INFO] [stderr]   Downloaded atty v0.2.13
[INFO] [stderr]   Downloaded crossbeam v0.7.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 23a6baaf73c0d145977a40d0998c04cfe4d11683a1b8ae97ee9694a3d9c8be40
[INFO] running `Command { std: "docker" "start" "23a6baaf73c0d145977a40d0998c04cfe4d11683a1b8ae97ee9694a3d9c8be40", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "23a6baaf73c0d145977a40d0998c04cfe4d11683a1b8ae97ee9694a3d9c8be40", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "23a6baaf73c0d145977a40d0998c04cfe4d11683a1b8ae97ee9694a3d9c8be40" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "23a6baaf73c0d145977a40d0998c04cfe4d11683a1b8ae97ee9694a3d9c8be40", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "23a6baaf73c0d145977a40d0998c04cfe4d11683a1b8ae97ee9694a3d9c8be40" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.62
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]    Compiling version_check v0.1.5
[INFO] [stderr]    Compiling either v1.5.3
[INFO] [stderr]    Compiling rand_core v0.4.2
[INFO] [stderr]    Compiling syn v1.0.5
[INFO] [stderr]    Compiling arrayvec v0.4.11
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling memoffset v0.5.1
[INFO] [stderr]    Compiling nodrop v0.1.14
[INFO] [stderr]    Compiling typenum v1.11.2
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling siphasher v0.2.3
[INFO] [stderr]    Compiling tokio-sync v0.1.6
[INFO] [stderr]    Compiling aho-corasick v0.7.6
[INFO] [stderr]    Compiling crossbeam-queue v0.1.2
[INFO] [stderr]    Compiling ryu v1.0.0
[INFO] [stderr]    Compiling httparse v1.3.4
[INFO] [stderr]    Compiling regex-syntax v0.6.12
[INFO] [stderr]    Compiling byte-tools v0.3.1
[INFO] [stderr]    Compiling c2-chacha v0.2.2
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling unicase v1.4.2
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling unicase v2.5.1
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[INFO] [stderr]    Compiling phf_shared v0.7.24
[INFO] [stderr]    Compiling block-padding v0.1.4
[INFO] [stderr]    Compiling idna v0.2.0
[INFO] [stderr]    Compiling ucd-trie v0.1.2
[INFO] [stderr]    Compiling bitflags v1.2.0
[INFO] [stderr]    Compiling parse-zoneinfo v0.2.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.7.2
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling pest v2.1.2
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]    Compiling bstr v0.2.8
[INFO] [stderr]    Compiling crossbeam-channel v0.3.9
[INFO] [stderr]    Compiling iovec v0.1.3
[INFO] [stderr]    Compiling num_cpus v1.10.1
[INFO] [stderr]    Compiling bytes v0.4.12
[INFO] [stderr]    Compiling net2 v0.2.33
[INFO] [stderr]    Compiling parking_lot_core v0.6.2
[INFO] [stderr]    Compiling generic-array v0.12.3
[INFO] [stderr]    Compiling crossbeam-deque v0.7.1
[INFO] [stderr]    Compiling getrandom v0.1.12
[INFO] [stderr]    Compiling time v0.1.42
[INFO] [stderr]    Compiling mio v0.6.19
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling digest v0.8.1
[INFO] [stderr]    Compiling block-buffer v0.7.3
[INFO] [stderr]    Compiling tokio-threadpool v0.1.16
[INFO] [stderr]    Compiling unic-common v0.9.0
[INFO] [stderr]    Compiling opaque-debug v0.2.3
[INFO] [stderr]    Compiling rand_chacha v0.2.1
[INFO] [stderr]    Compiling fake-simd v0.1.2
[INFO] [stderr]    Compiling tokio-io v0.1.12
[INFO] [stderr]    Compiling http v0.1.18
[INFO] [stderr]    Compiling unic-char-range v0.9.0
[INFO] [stderr]    Compiling same-file v1.0.5
[INFO] [stderr]    Compiling maplit v1.0.2
[INFO] [stderr]    Compiling unic-char-property v0.9.0
[INFO] [stderr]    Compiling rand v0.7.2
[INFO] [stderr]    Compiling sha-1 v0.8.1
[INFO] [stderr]    Compiling pest_meta v2.1.2
[INFO] [stderr]    Compiling walkdir v2.2.9
[INFO] [stderr]    Compiling phf_generator v0.7.24
[INFO] [stderr]    Compiling string v0.2.1
[INFO] [stderr]    Compiling phf_codegen v0.7.24
[INFO] [stderr]    Compiling mime_guess v1.8.7
[INFO] [stderr]    Compiling tokio-buf v0.1.1
[INFO] [stderr]    Compiling unic-ucd-version v0.9.0
[INFO] [stderr]    Compiling chrono-tz v0.5.1
[INFO] [stderr]    Compiling tokio-reactor v0.1.10
[INFO] [stderr]    Compiling tokio-codec v0.1.1
[INFO] [stderr]    Compiling mio-uds v0.6.7
[INFO] [stderr]    Compiling tokio-fs v0.1.6
[INFO] [stderr]    Compiling mime v0.2.6
[INFO] [stderr]    Compiling mime_guess v2.0.1
[INFO] [stderr]    Compiling phf v0.7.24
[INFO] [stderr]    Compiling num-integer v0.1.41
[INFO] [stderr]    Compiling tokio-uds v0.2.5
[INFO] [stderr]    Compiling tokio-udp v0.1.5
[INFO] [stderr]    Compiling tokio-tcp v0.1.3
[INFO] [stderr]    Compiling regex v1.3.1
[INFO] [stderr]    Compiling hyper v0.12.35
[INFO] [stderr]    Compiling base64 v0.10.1
[INFO] [stderr]    Compiling remove_dir_all v0.5.2
[INFO] [stderr]    Compiling safemem v0.3.2
[INFO] [stderr]    Compiling try-lock v0.2.2
[INFO] [stderr]    Compiling indexmap v1.2.0
[INFO] [stderr]    Compiling mime v0.3.14
[INFO] [stderr]    Compiling tempfile v3.1.0
[INFO] [stderr]    Compiling buf_redux v0.8.4
[INFO] [stderr]    Compiling want v0.2.0
[INFO] [stderr]    Compiling tokio v0.1.22
[INFO] [stderr]    Compiling chrono v0.4.9
[INFO] [stderr]    Compiling pest_generator v2.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.101
[INFO] [stderr]    Compiling unic-ucd-segment v0.9.0
[INFO] [stderr]    Compiling input_buffer v0.2.0
[INFO] [stderr]    Compiling http-body v0.1.0
[INFO] [stderr]    Compiling headers-core v0.1.1
[INFO] [stderr]    Compiling h2 v0.1.26
[INFO] [stderr]    Compiling futures-cpupool v0.1.8
[INFO] [stderr]    Compiling twoway v0.1.8
[INFO] [stderr]    Compiling deunicode v0.4.3
[INFO] [stderr]    Compiling dtoa v0.4.4
[INFO] [stderr]    Compiling utf-8 v0.7.5
[INFO] [stderr]    Compiling unic-segment v0.9.0
[INFO] [stderr]    Compiling slug v0.1.4
[INFO] [stderr]    Compiling globset v0.4.4
[INFO] [stderr]    Compiling multipart v0.16.1
[INFO] [stderr]    Compiling headers v0.2.3
[INFO] [stderr]    Compiling serde_repr v0.1.5
[INFO] [stderr]    Compiling pest_derive v2.1.0
[INFO] [stderr]    Compiling humantime v1.3.0
[INFO] [stderr]    Compiling ignore v0.4.10
[INFO] [stderr]    Compiling atty v0.2.13
[INFO] [stderr]    Compiling urlencoding v1.0.0
[INFO] [stderr]    Compiling termcolor v1.0.5
[INFO] [stderr]    Compiling humansize v1.1.0
[INFO] [stderr]    Compiling crossbeam v0.7.2
[INFO] [stderr]    Compiling env_logger v0.7.0
[INFO] [stderr]    Compiling globwalk v0.7.1
[INFO] [stderr]    Compiling serde v1.0.101
[INFO] [stderr]    Compiling url v2.1.0
[INFO] [stderr]    Compiling serde_json v1.0.41
[INFO] [stderr]    Compiling tungstenite v0.9.1
[INFO] [stderr]    Compiling serde_urlencoded v0.6.1
[INFO] [stderr]    Compiling lsp-types v0.61.0
[INFO] [stderr]    Compiling tera v1.0.0-beta.16
[INFO] [stderr]    Compiling warp v0.1.20
[INFO] [stderr]    Compiling lspweb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: lint `private_in_public` has been removed: replaced with another group of lints, see RFC <https://rust-lang.github.io/rfcs/2145-type-privacy.html> for more information
[INFO] [stdout]  --> src/main.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![deny(private_in_public)]
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lsp.rs:223:17
[INFO] [stdout]     |
[INFO] [stdout] 223 | #[derive(Debug, Deserialize, PartialEq)]
[INFO] [stdout]     |                 ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[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 derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lsp.rs:319:17
[INFO] [stdout]     |
[INFO] [stdout] 319 | #[derive(Debug, Deserialize, PartialEq, Serialize)]
[INFO] [stdout]     |                 ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[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: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lsp.rs:319:41
[INFO] [stdout]     |
[INFO] [stdout] 319 | #[derive(Debug, Deserialize, PartialEq, Serialize)]
[INFO] [stdout]     |                                         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[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: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/main.rs:85:10
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[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: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `reader_thread` and `writer_thread` are never read
[INFO] [stdout]   --> src/lsp.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct LsClient {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 25 |     reader_thread: JoinHandle<()>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 26 |     readerctl_tx: Sender<ReaderControl>,
[INFO] [stdout] 27 |     writer_thread: JoinHandle<()>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Exit` is never constructed
[INFO] [stdout]   --> src/lsp.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | enum WriterControl {
[INFO] [stdout]    |      ------------- variant in this enum
[INFO] [stdout] 35 |     Write(RawJsonRpc),
[INFO] [stdout] 36 |     Exit,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/main.rs:85:10
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Deserialize)]
[INFO] [stdout]    |          ^----------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Deserialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_GenericQuery`
[INFO] [stdout] 86 | struct GenericQuery {
[INFO] [stdout]    |        ------------ `GenericQuery` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/lsp.rs:223:17
[INFO] [stdout]     |
[INFO] [stdout] 223 | #[derive(Debug, Deserialize, PartialEq)]
[INFO] [stdout]     |                 ^----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `Deserialize` is not local
[INFO] [stdout]     |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_RawJsonRpc`
[INFO] [stdout] ...
[INFO] [stdout] 226 | enum RawJsonRpc {
[INFO] [stdout]     |      ---------- `RawJsonRpc` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/lsp.rs:319:17
[INFO] [stdout]     |
[INFO] [stdout] 319 | #[derive(Debug, Deserialize, PartialEq, Serialize)]
[INFO] [stdout]     |                 ^----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `Deserialize` is not local
[INFO] [stdout]     |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_RpcError`
[INFO] [stdout] 320 | pub struct RpcError {
[INFO] [stdout]     |            -------- `RpcError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/lsp.rs:319:41
[INFO] [stdout]     |
[INFO] [stdout] 319 | #[derive(Debug, Deserialize, PartialEq, Serialize)]
[INFO] [stdout]     |                                         ^--------
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         `Serialize` is not local
[INFO] [stdout]     |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_RpcError`
[INFO] [stdout] 320 | pub struct RpcError {
[INFO] [stdout]     |            -------- `RpcError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 29s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: buf_redux v0.8.4, multipart v0.16.1, warp v0.1.20
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "23a6baaf73c0d145977a40d0998c04cfe4d11683a1b8ae97ee9694a3d9c8be40", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "23a6baaf73c0d145977a40d0998c04cfe4d11683a1b8ae97ee9694a3d9c8be40" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling lspweb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: lint `private_in_public` has been removed: replaced with another group of lints, see RFC <https://rust-lang.github.io/rfcs/2145-type-privacy.html> for more information
[INFO] [stdout]  --> src/main.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![deny(private_in_public)]
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lsp.rs:223:17
[INFO] [stdout]     |
[INFO] [stdout] 223 | #[derive(Debug, Deserialize, PartialEq)]
[INFO] [stdout]     |                 ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[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 derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lsp.rs:319:17
[INFO] [stdout]     |
[INFO] [stdout] 319 | #[derive(Debug, Deserialize, PartialEq, Serialize)]
[INFO] [stdout]     |                 ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[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: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lsp.rs:319:41
[INFO] [stdout]     |
[INFO] [stdout] 319 | #[derive(Debug, Deserialize, PartialEq, Serialize)]
[INFO] [stdout]     |                                         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[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: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/main.rs:85:10
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[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: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `reader_thread` and `writer_thread` are never read
[INFO] [stdout]   --> src/lsp.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct LsClient {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 25 |     reader_thread: JoinHandle<()>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 26 |     readerctl_tx: Sender<ReaderControl>,
[INFO] [stdout] 27 |     writer_thread: JoinHandle<()>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Exit` is never constructed
[INFO] [stdout]   --> src/lsp.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | enum WriterControl {
[INFO] [stdout]    |      ------------- variant in this enum
[INFO] [stdout] 35 |     Write(RawJsonRpc),
[INFO] [stdout] 36 |     Exit,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/main.rs:85:10
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Deserialize)]
[INFO] [stdout]    |          ^----------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Deserialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_GenericQuery`
[INFO] [stdout] 86 | struct GenericQuery {
[INFO] [stdout]    |        ------------ `GenericQuery` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/lsp.rs:223:17
[INFO] [stdout]     |
[INFO] [stdout] 223 | #[derive(Debug, Deserialize, PartialEq)]
[INFO] [stdout]     |                 ^----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `Deserialize` is not local
[INFO] [stdout]     |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_RawJsonRpc`
[INFO] [stdout] ...
[INFO] [stdout] 226 | enum RawJsonRpc {
[INFO] [stdout]     |      ---------- `RawJsonRpc` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/lsp.rs:319:17
[INFO] [stdout]     |
[INFO] [stdout] 319 | #[derive(Debug, Deserialize, PartialEq, Serialize)]
[INFO] [stdout]     |                 ^----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `Deserialize` is not local
[INFO] [stdout]     |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_RpcError`
[INFO] [stdout] 320 | pub struct RpcError {
[INFO] [stdout]     |            -------- `RpcError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/lsp.rs:319:41
[INFO] [stdout]     |
[INFO] [stdout] 319 | #[derive(Debug, Deserialize, PartialEq, Serialize)]
[INFO] [stdout]     |                                         ^--------
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         `Serialize` is not local
[INFO] [stdout]     |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_RpcError`
[INFO] [stdout] 320 | pub struct RpcError {
[INFO] [stdout]     |            -------- `RpcError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1.99s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: buf_redux v0.8.4, multipart v0.16.1, warp v0.1.20
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "23a6baaf73c0d145977a40d0998c04cfe4d11683a1b8ae97ee9694a3d9c8be40", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "23a6baaf73c0d145977a40d0998c04cfe4d11683a1b8ae97ee9694a3d9c8be40" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: lint `private_in_public` has been removed: replaced with another group of lints, see RFC <https://rust-lang.github.io/rfcs/2145-type-privacy.html> for more information
[INFO] [stderr]  --> src/main.rs:2:9
[INFO] [stderr]   |
[INFO] [stderr] 2 | #![deny(private_in_public)]
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]    --> src/lsp.rs:223:17
[INFO] [stderr]     |
[INFO] [stderr] 223 | #[derive(Debug, Deserialize, PartialEq)]
[INFO] [stderr]     |                 ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: no expected values for `feature`
[INFO] [stderr]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stderr]     = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]    --> src/lsp.rs:319:17
[INFO] [stderr]     |
[INFO] [stderr] 319 | #[derive(Debug, Deserialize, PartialEq, Serialize)]
[INFO] [stderr]     |                 ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: no expected values for `feature`
[INFO] [stderr]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stderr]     = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]    --> src/lsp.rs:319:41
[INFO] [stderr]     |
[INFO] [stderr] 319 | #[derive(Debug, Deserialize, PartialEq, Serialize)]
[INFO] [stderr]     |                                         ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: no expected values for `feature`
[INFO] [stderr]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stderr]     = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]   --> src/main.rs:85:10
[INFO] [stderr]    |
[INFO] [stderr] 85 | #[derive(Deserialize)]
[INFO] [stderr]    |          ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stderr]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: fields `reader_thread` and `writer_thread` are never read
[INFO] [stderr]   --> src/lsp.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub struct LsClient {
[INFO] [stderr]    |            -------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 25 |     reader_thread: JoinHandle<()>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 26 |     readerctl_tx: Sender<ReaderControl>,
[INFO] [stderr] 27 |     writer_thread: JoinHandle<()>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Exit` is never constructed
[INFO] [stderr]   --> src/lsp.rs:36:5
[INFO] [stderr]    |
[INFO] [stderr] 34 | enum WriterControl {
[INFO] [stderr]    |      ------------- variant in this enum
[INFO] [stderr] 35 |     Write(RawJsonRpc),
[INFO] [stderr] 36 |     Exit,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/main.rs:85:10
[INFO] [stderr]    |
[INFO] [stderr] 85 | #[derive(Deserialize)]
[INFO] [stderr]    |          ^----------
[INFO] [stderr]    |          |
[INFO] [stderr]    |          `Deserialize` is not local
[INFO] [stderr]    |          move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_GenericQuery`
[INFO] [stderr] 86 | struct GenericQuery {
[INFO] [stderr]    |        ------------ `GenericQuery` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/lsp.rs:223:17
[INFO] [stderr]     |
[INFO] [stderr] 223 | #[derive(Debug, Deserialize, PartialEq)]
[INFO] [stderr]     |                 ^----------
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 `Deserialize` is not local
[INFO] [stderr]     |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_RawJsonRpc`
[INFO] [stderr] ...
[INFO] [stderr] 226 | enum RawJsonRpc {
[INFO] [stderr]     |      ---------- `RawJsonRpc` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/lsp.rs:319:17
[INFO] [stderr]     |
[INFO] [stderr] 319 | #[derive(Debug, Deserialize, PartialEq, Serialize)]
[INFO] [stderr]     |                 ^----------
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 `Deserialize` is not local
[INFO] [stderr]     |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_RpcError`
[INFO] [stderr] 320 | pub struct RpcError {
[INFO] [stderr]     |            -------- `RpcError` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/lsp.rs:319:41
[INFO] [stderr]     |
[INFO] [stderr] 319 | #[derive(Debug, Deserialize, PartialEq, Serialize)]
[INFO] [stderr]     |                                         ^--------
[INFO] [stderr]     |                                         |
[INFO] [stderr]     |                                         `Serialize` is not local
[INFO] [stderr]     |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_RpcError`
[INFO] [stderr] 320 | pub struct RpcError {
[INFO] [stderr]     |            -------- `RpcError` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `lspweb` (bin "lspweb" test) generated 11 warnings
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.17s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: buf_redux v0.8.4, multipart v0.16.1, warp v0.1.20
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/deps/lspweb-9a6e6046c4e3001b)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test lsp::tests::test_parse_content_length ... ok
[INFO] [stdout] test lsp::tests::test_raw_jsonrpc_serialize ... ok
[INFO] [stdout] test lsp::tests::test_raw_jsonrpc_deserialize ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "23a6baaf73c0d145977a40d0998c04cfe4d11683a1b8ae97ee9694a3d9c8be40", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "23a6baaf73c0d145977a40d0998c04cfe4d11683a1b8ae97ee9694a3d9c8be40", kill_on_drop: false }`
[INFO] [stdout] 23a6baaf73c0d145977a40d0998c04cfe4d11683a1b8ae97ee9694a3d9c8be40
