[INFO] fetching crate wscml 0.2.3...
[INFO] testing wscml-0.2.3 against try#db823df02fd0c2cf67b43025ac3fef3f2d743245 for pr-150681
[INFO] extracting crate wscml 0.2.3 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate wscml 0.2.3
[INFO] finished tweaking crates.io crate wscml 0.2.3
[INFO] tweaked toml for crates.io crate wscml 0.2.3 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate wscml 0.2.3 on toolchain db823df02fd0c2cf67b43025ac3fef3f2d743245
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 121 packages to latest compatible versions
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] dc271277ce03a58d5ddaee4eee6cecc4cb31934f11d450d210d3c2572dbc583b
[INFO] running `Command { std: "docker" "start" "-a" "dc271277ce03a58d5ddaee4eee6cecc4cb31934f11d450d210d3c2572dbc583b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "dc271277ce03a58d5ddaee4eee6cecc4cb31934f11d450d210d3c2572dbc583b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dc271277ce03a58d5ddaee4eee6cecc4cb31934f11d450d210d3c2572dbc583b", kill_on_drop: false }`
[INFO] [stdout] dc271277ce03a58d5ddaee4eee6cecc4cb31934f11d450d210d3c2572dbc583b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 49eb086a0e952fb900d5295a8dc72d2363cccfb869421f79dfc1e53d54e11e6d
[INFO] running `Command { std: "docker" "start" "-a" "49eb086a0e952fb900d5295a8dc72d2363cccfb869421f79dfc1e53d54e11e6d", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling tracing-log v0.1.4
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling tracing-serde v0.1.3
[INFO] [stderr]    Compiling matchers v0.0.1
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling atoi v0.3.3
[INFO] [stderr]    Compiling tokio v1.49.0
[INFO] [stderr]    Compiling structopt-derive v0.4.18
[INFO] [stderr]    Compiling pin-project v1.1.10
[INFO] [stderr]    Compiling tracing-futures v0.2.5
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling tracing-subscriber v0.2.25
[INFO] [stderr]    Compiling structopt v0.3.26
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling mini-redis v0.4.1
[INFO] [stderr]    Compiling wscml v0.2.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/lib.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 | use tokio::io::{self, AsyncReadExt};
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `timeout`
[INFO] [stdout]   --> src/lib.rs:38:19
[INFO] [stdout]    |
[INFO] [stdout] 38 | use tokio::time::{timeout,Duration};
[INFO] [stdout]    |                   ^^^^^^^ ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToSocketAddrs`
[INFO] [stdout]   --> src/lib.rs:39:78
[INFO] [stdout]    |
[INFO] [stdout] 39 | use tokio::net::{TcpListener as TokioTcpListener,TcpStream as TokioTcpStream,ToSocketAddrs};
[INFO] [stdout]    |                                                                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr as TokioSocketAddr`
[INFO] [stdout]   --> src/lib.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | use std::net::SocketAddr as TokioSocketAddr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::time::Sleep`
[INFO] [stdout]   --> src/lib.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | use tokio::time::Sleep;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/lib.rs:1015:64
[INFO] [stdout]      |
[INFO] [stdout] 1015 |     async fn http_to_server(&'a self,mut stream:TokioTcpStream,mut buffer: [u8;BUF_NUM]) -> TokioTcpStream {
[INFO] [stdout]      |                                                                ----^^^^^^
[INFO] [stdout]      |                                                                |
[INFO] [stdout]      |                                                                help: remove this `mut`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:906:13
[INFO] [stdout]     |
[INFO] [stdout] 906 |         let mut listener = TokioTcpListener::bind(&ipaddres[0]).await.map_err( stringify ).unwrap();
[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/lib.rs:911:18
[INFO] [stdout]     |
[INFO] [stdout] 911 |             let (mut socket, address) = listener.accept().await.unwrap();
[INFO] [stdout]     |                  ----^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/func.rs:174:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         get => {
[INFO] [stdout]     |                         --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 174 |                         post => {
[INFO] [stdout]     |                         ^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/func.rs:181:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         get => {
[INFO] [stdout]     |                         --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 181 |                         put => {
[INFO] [stdout]     |                         ^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/func.rs:191:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         get => {
[INFO] [stdout]     |                         --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 191 |                         del => {
[INFO] [stdout]     |                         ^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/func.rs:202:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         get => {
[INFO] [stdout]     |                         --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 202 |                         _ => {},
[INFO] [stdout]     |                         ^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/func.rs:168:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         get => {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_get`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `post`
[INFO] [stdout]    --> src/func.rs:174:25
[INFO] [stdout]     |
[INFO] [stdout] 174 |                         post => {
[INFO] [stdout]     |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_post`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `put`
[INFO] [stdout]    --> src/func.rs:181:25
[INFO] [stdout]     |
[INFO] [stdout] 181 |                         put => {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_put`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `del`
[INFO] [stdout]    --> src/func.rs:191:25
[INFO] [stdout]     |
[INFO] [stdout] 191 |                         del => {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_del`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `urldatas` is never read
[INFO] [stdout]    --> src/func.rs:117:33
[INFO] [stdout]     |
[INFO] [stdout] 117 |           let mut urldatas: Met = Met {
[INFO] [stdout]     |  _________________________________^
[INFO] [stdout] 118 | |             state: Vec::new(),
[INFO] [stdout] 119 | |             methods: Vec::new(),
[INFO] [stdout] 120 | |             url: Vec::new(),
[INFO] [stdout] 121 | |         };
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `gg` is never read
[INFO] [stdout]    --> src/func.rs:256:22
[INFO] [stdout]     |
[INFO] [stdout] 256 |         let mut gg = Some(format!(""));
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `b_b_i` is assigned to, but never used
[INFO] [stdout]    --> src/func.rs:564:9
[INFO] [stdout]     |
[INFO] [stdout] 564 |     let mut b_b_i: usize = 0;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_b_b_i` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `b_b_i` is never read
[INFO] [stdout]    --> src/func.rs:575:9
[INFO] [stdout]     |
[INFO] [stdout] 575 |         b_b_i += 1;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `fhtml` is never read
[INFO] [stdout]   --> src/http.rs:72:28
[INFO] [stdout]    |
[INFO] [stdout] 72 |     let mut fhtml:String = "".to_string();
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `n` is never read
[INFO] [stdout]    --> src/lib.rs:406:26
[INFO] [stdout]     |
[INFO] [stdout] 406 |         let mut n: i32 = 0;
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `pzjg` is never read
[INFO] [stdout]    --> src/lib.rs:473:24
[INFO] [stdout]     |
[INFO] [stdout] 473 |         let mut pzjg = false;
[INFO] [stdout]     |                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `contents` is never read
[INFO] [stdout]    --> src/lib.rs:521:47
[INFO] [stdout]     |
[INFO] [stdout] 521 |                     let mut contents:String = String::from("");
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `contents` is never read
[INFO] [stdout]    --> src/lib.rs:541:47
[INFO] [stdout]     |
[INFO] [stdout] 541 |                     let mut contents:String = String::from("");
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `webserver`
[INFO] [stdout]    --> src/lib.rs:606:13
[INFO] [stdout]     |
[INFO] [stdout] 606 |         let webserver = "Upgrade: websocket";
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_webserver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `status_line` is assigned to, but never used
[INFO] [stdout]    --> src/lib.rs:607:13
[INFO] [stdout]     |
[INFO] [stdout] 607 |         let mut status_line: &str = "";
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_status_line` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `response`
[INFO] [stdout]    --> src/lib.rs:630:17
[INFO] [stdout]     |
[INFO] [stdout] 630 |             let response: &[u8] = "无广播消息！".as_bytes();
[INFO] [stdout]     |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_response`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `n` is never read
[INFO] [stdout]    --> src/lib.rs:596:26
[INFO] [stdout]     |
[INFO] [stdout] 596 |         let mut n: i32 = 0;
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `n` is never read
[INFO] [stdout]    --> src/lib.rs:657:9
[INFO] [stdout]     |
[INFO] [stdout] 657 |         n += 1;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `status_line` is never read
[INFO] [stdout]    --> src/lib.rs:638:14
[INFO] [stdout]     |
[INFO] [stdout] 638 |             (status_line,filename) = if buffer.starts_with(ai) {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `filename` is never read
[INFO] [stdout]    --> src/lib.rs:638:26
[INFO] [stdout]     |
[INFO] [stdout] 638 |             (status_line,filename) = if buffer.starts_with(ai) {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `webport` is never read
[INFO] [stdout]    --> src/lib.rs:819:27
[INFO] [stdout]     |
[INFO] [stdout] 819 |         let mut webport = ["";4];
[INFO] [stdout]     |                           ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]    --> src/lib.rs:911:30
[INFO] [stdout]     |
[INFO] [stdout] 911 |             let (mut socket, address) = listener.accept().await.unwrap();
[INFO] [stdout]     |                              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `response`
[INFO] [stdout]    --> src/lib.rs:969:33
[INFO] [stdout]     |
[INFO] [stdout] 969 | ...                   let response = dl.theone(0);
[INFO] [stdout]     |                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_response`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dlp`
[INFO] [stdout]    --> src/lib.rs:982:13
[INFO] [stdout]     |
[INFO] [stdout] 982 |         let dlp = dl.theone(0);
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_dlp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `stream` is never read
[INFO] [stdout]     --> src/lib.rs:1001:21
[INFO] [stdout]      |
[INFO] [stdout] 1001 |                     stream = self.http_to_server(stream,buffer).await;
[INFO] [stdout]      |                     ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `n` is never read
[INFO] [stdout]    --> src/lib.rs:928:26
[INFO] [stdout]     |
[INFO] [stdout] 928 |         let mut n: i32 = 0;
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `pzjg` is never read
[INFO] [stdout]     --> src/lib.rs:1026:24
[INFO] [stdout]      |
[INFO] [stdout] 1026 |         let mut pzjg = false;
[INFO] [stdout]      |                        ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `contents` is never read
[INFO] [stdout]     --> src/lib.rs:1096:47
[INFO] [stdout]      |
[INFO] [stdout] 1096 |                     let mut contents:String = String::from("");
[INFO] [stdout]      |                                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ipaddnum` is never read
[INFO] [stdout]    --> src/lib.rs:716:5
[INFO] [stdout]     |
[INFO] [stdout] 713 | pub struct  TCmlServer {
[INFO] [stdout]     |             ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 716 |     ipaddnum:usize,//ip个数
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TCmlServer` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `http_setbpost` is never used
[INFO] [stdout]    --> src/lib.rs:755:14
[INFO] [stdout]     |
[INFO] [stdout] 723 | impl <'a >TCmlServer {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 755 |     async fn http_setbpost(&'a mut self,inpost:&'static str){
[INFO] [stdout]     |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/func.rs:332:24
[INFO] [stdout]     |
[INFO] [stdout] 332 |                 name: n.clone(),
[INFO] [stdout]     |                        ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/func.rs:333:23
[INFO] [stdout]     |
[INFO] [stdout] 333 |                 val: v.clone(),
[INFO] [stdout]     |                       ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:185:31
[INFO] [stdout]     |
[INFO] [stdout] 185 |                 let pat = path.clone();
[INFO] [stdout]     |                               ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:852:31
[INFO] [stdout]     |
[INFO] [stdout] 852 |                 let pat = path.clone();
[INFO] [stdout]     |                               ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:916:13
[INFO] [stdout]     |
[INFO] [stdout] 916 | / ...   tokio::spawn(async move {
[INFO] [stdout] 917 | | ...       // socket.write(format!("{:?}\r\nContent-Length:{:?}\r\n\r\n{:?}","HTTP/1.1 200 OK","rust server".len(),"rust server")....
[INFO] [stdout] 918 | | ...       this.handle_client(socket).await;
[INFO] [stdout] 919 | | ...   }).await;
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 916 |             let _ = tokio::spawn(async move {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.64s
[INFO] running `Command { std: "docker" "inspect" "49eb086a0e952fb900d5295a8dc72d2363cccfb869421f79dfc1e53d54e11e6d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "49eb086a0e952fb900d5295a8dc72d2363cccfb869421f79dfc1e53d54e11e6d", kill_on_drop: false }`
[INFO] [stdout] 49eb086a0e952fb900d5295a8dc72d2363cccfb869421f79dfc1e53d54e11e6d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4d216173c08d9480562c69e006c243e63e1ff9c5628bea0e9a6134ea70e599e2
[INFO] running `Command { std: "docker" "start" "-a" "4d216173c08d9480562c69e006c243e63e1ff9c5628bea0e9a6134ea70e599e2", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/lib.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 | use tokio::io::{self, AsyncReadExt};
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `timeout`
[INFO] [stdout]   --> src/lib.rs:38:19
[INFO] [stdout]    |
[INFO] [stdout] 38 | use tokio::time::{timeout,Duration};
[INFO] [stdout]    |                   ^^^^^^^ ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToSocketAddrs`
[INFO] [stdout]   --> src/lib.rs:39:78
[INFO] [stdout]    |
[INFO] [stdout] 39 | use tokio::net::{TcpListener as TokioTcpListener,TcpStream as TokioTcpStream,ToSocketAddrs};
[INFO] [stdout]    |                                                                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr as TokioSocketAddr`
[INFO] [stdout]   --> src/lib.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | use std::net::SocketAddr as TokioSocketAddr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::time::Sleep`
[INFO] [stdout]   --> src/lib.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | use tokio::time::Sleep;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/lib.rs:1015:64
[INFO] [stdout]      |
[INFO] [stdout] 1015 |     async fn http_to_server(&'a self,mut stream:TokioTcpStream,mut buffer: [u8;BUF_NUM]) -> TokioTcpStream {
[INFO] [stdout]      |                                                                ----^^^^^^
[INFO] [stdout]      |                                                                |
[INFO] [stdout]      |                                                                help: remove this `mut`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:906:13
[INFO] [stdout]     |
[INFO] [stdout] 906 |         let mut listener = TokioTcpListener::bind(&ipaddres[0]).await.map_err( stringify ).unwrap();
[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/lib.rs:911:18
[INFO] [stdout]     |
[INFO] [stdout] 911 |             let (mut socket, address) = listener.accept().await.unwrap();
[INFO] [stdout]     |                  ----^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling wscml v0.2.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/func.rs:174:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         get => {
[INFO] [stdout]     |                         --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 174 |                         post => {
[INFO] [stdout]     |                         ^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/func.rs:181:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         get => {
[INFO] [stdout]     |                         --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 181 |                         put => {
[INFO] [stdout]     |                         ^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/func.rs:191:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         get => {
[INFO] [stdout]     |                         --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 191 |                         del => {
[INFO] [stdout]     |                         ^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/func.rs:202:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         get => {
[INFO] [stdout]     |                         --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 202 |                         _ => {},
[INFO] [stdout]     |                         ^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/func.rs:168:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         get => {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_get`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `post`
[INFO] [stdout]    --> src/func.rs:174:25
[INFO] [stdout]     |
[INFO] [stdout] 174 |                         post => {
[INFO] [stdout]     |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_post`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `put`
[INFO] [stdout]    --> src/func.rs:181:25
[INFO] [stdout]     |
[INFO] [stdout] 181 |                         put => {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_put`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `del`
[INFO] [stdout]    --> src/func.rs:191:25
[INFO] [stdout]     |
[INFO] [stdout] 191 |                         del => {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_del`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `urldatas` is never read
[INFO] [stdout]    --> src/func.rs:117:33
[INFO] [stdout]     |
[INFO] [stdout] 117 |           let mut urldatas: Met = Met {
[INFO] [stdout]     |  _________________________________^
[INFO] [stdout] 118 | |             state: Vec::new(),
[INFO] [stdout] 119 | |             methods: Vec::new(),
[INFO] [stdout] 120 | |             url: Vec::new(),
[INFO] [stdout] 121 | |         };
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `gg` is never read
[INFO] [stdout]    --> src/func.rs:256:22
[INFO] [stdout]     |
[INFO] [stdout] 256 |         let mut gg = Some(format!(""));
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `b_b_i` is assigned to, but never used
[INFO] [stdout]    --> src/func.rs:564:9
[INFO] [stdout]     |
[INFO] [stdout] 564 |     let mut b_b_i: usize = 0;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_b_b_i` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `b_b_i` is never read
[INFO] [stdout]    --> src/func.rs:575:9
[INFO] [stdout]     |
[INFO] [stdout] 575 |         b_b_i += 1;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `fhtml` is never read
[INFO] [stdout]   --> src/http.rs:72:28
[INFO] [stdout]    |
[INFO] [stdout] 72 |     let mut fhtml:String = "".to_string();
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `n` is never read
[INFO] [stdout]    --> src/lib.rs:406:26
[INFO] [stdout]     |
[INFO] [stdout] 406 |         let mut n: i32 = 0;
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `pzjg` is never read
[INFO] [stdout]    --> src/lib.rs:473:24
[INFO] [stdout]     |
[INFO] [stdout] 473 |         let mut pzjg = false;
[INFO] [stdout]     |                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `contents` is never read
[INFO] [stdout]    --> src/lib.rs:521:47
[INFO] [stdout]     |
[INFO] [stdout] 521 |                     let mut contents:String = String::from("");
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `contents` is never read
[INFO] [stdout]    --> src/lib.rs:541:47
[INFO] [stdout]     |
[INFO] [stdout] 541 |                     let mut contents:String = String::from("");
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `webserver`
[INFO] [stdout]    --> src/lib.rs:606:13
[INFO] [stdout]     |
[INFO] [stdout] 606 |         let webserver = "Upgrade: websocket";
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_webserver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `status_line` is assigned to, but never used
[INFO] [stdout]    --> src/lib.rs:607:13
[INFO] [stdout]     |
[INFO] [stdout] 607 |         let mut status_line: &str = "";
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_status_line` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `response`
[INFO] [stdout]    --> src/lib.rs:630:17
[INFO] [stdout]     |
[INFO] [stdout] 630 |             let response: &[u8] = "无广播消息！".as_bytes();
[INFO] [stdout]     |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_response`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `n` is never read
[INFO] [stdout]    --> src/lib.rs:596:26
[INFO] [stdout]     |
[INFO] [stdout] 596 |         let mut n: i32 = 0;
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `n` is never read
[INFO] [stdout]    --> src/lib.rs:657:9
[INFO] [stdout]     |
[INFO] [stdout] 657 |         n += 1;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `status_line` is never read
[INFO] [stdout]    --> src/lib.rs:638:14
[INFO] [stdout]     |
[INFO] [stdout] 638 |             (status_line,filename) = if buffer.starts_with(ai) {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `filename` is never read
[INFO] [stdout]    --> src/lib.rs:638:26
[INFO] [stdout]     |
[INFO] [stdout] 638 |             (status_line,filename) = if buffer.starts_with(ai) {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `webport` is never read
[INFO] [stdout]    --> src/lib.rs:819:27
[INFO] [stdout]     |
[INFO] [stdout] 819 |         let mut webport = ["";4];
[INFO] [stdout]     |                           ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]    --> src/lib.rs:911:30
[INFO] [stdout]     |
[INFO] [stdout] 911 |             let (mut socket, address) = listener.accept().await.unwrap();
[INFO] [stdout]     |                              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `response`
[INFO] [stdout]    --> src/lib.rs:969:33
[INFO] [stdout]     |
[INFO] [stdout] 969 | ...                   let response = dl.theone(0);
[INFO] [stdout]     |                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_response`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dlp`
[INFO] [stdout]    --> src/lib.rs:982:13
[INFO] [stdout]     |
[INFO] [stdout] 982 |         let dlp = dl.theone(0);
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_dlp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `stream` is never read
[INFO] [stdout]     --> src/lib.rs:1001:21
[INFO] [stdout]      |
[INFO] [stdout] 1001 |                     stream = self.http_to_server(stream,buffer).await;
[INFO] [stdout]      |                     ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `n` is never read
[INFO] [stdout]    --> src/lib.rs:928:26
[INFO] [stdout]     |
[INFO] [stdout] 928 |         let mut n: i32 = 0;
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `pzjg` is never read
[INFO] [stdout]     --> src/lib.rs:1026:24
[INFO] [stdout]      |
[INFO] [stdout] 1026 |         let mut pzjg = false;
[INFO] [stdout]      |                        ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `contents` is never read
[INFO] [stdout]     --> src/lib.rs:1096:47
[INFO] [stdout]      |
[INFO] [stdout] 1096 |                     let mut contents:String = String::from("");
[INFO] [stdout]      |                                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ipaddnum` is never read
[INFO] [stdout]    --> src/lib.rs:716:5
[INFO] [stdout]     |
[INFO] [stdout] 713 | pub struct  TCmlServer {
[INFO] [stdout]     |             ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 716 |     ipaddnum:usize,//ip个数
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TCmlServer` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `http_setbpost` is never used
[INFO] [stdout]    --> src/lib.rs:755:14
[INFO] [stdout]     |
[INFO] [stdout] 723 | impl <'a >TCmlServer {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 755 |     async fn http_setbpost(&'a mut self,inpost:&'static str){
[INFO] [stdout]     |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/func.rs:332:24
[INFO] [stdout]     |
[INFO] [stdout] 332 |                 name: n.clone(),
[INFO] [stdout]     |                        ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/func.rs:333:23
[INFO] [stdout]     |
[INFO] [stdout] 333 |                 val: v.clone(),
[INFO] [stdout]     |                       ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:185:31
[INFO] [stdout]     |
[INFO] [stdout] 185 |                 let pat = path.clone();
[INFO] [stdout]     |                               ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:852:31
[INFO] [stdout]     |
[INFO] [stdout] 852 |                 let pat = path.clone();
[INFO] [stdout]     |                               ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:916:13
[INFO] [stdout]     |
[INFO] [stdout] 916 | / ...   tokio::spawn(async move {
[INFO] [stdout] 917 | | ...       // socket.write(format!("{:?}\r\nContent-Length:{:?}\r\n\r\n{:?}","HTTP/1.1 200 OK","rust server".len(),"rust server")....
[INFO] [stdout] 918 | | ...       this.handle_client(socket).await;
[INFO] [stdout] 919 | | ...   }).await;
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 916 |             let _ = tokio::spawn(async move {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/lib.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 | use tokio::io::{self, AsyncReadExt};
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `timeout`
[INFO] [stdout]   --> src/lib.rs:38:19
[INFO] [stdout]    |
[INFO] [stdout] 38 | use tokio::time::{timeout,Duration};
[INFO] [stdout]    |                   ^^^^^^^ ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToSocketAddrs`
[INFO] [stdout]   --> src/lib.rs:39:78
[INFO] [stdout]    |
[INFO] [stdout] 39 | use tokio::net::{TcpListener as TokioTcpListener,TcpStream as TokioTcpStream,ToSocketAddrs};
[INFO] [stdout]    |                                                                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr as TokioSocketAddr`
[INFO] [stdout]   --> src/lib.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | use std::net::SocketAddr as TokioSocketAddr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::time::Sleep`
[INFO] [stdout]   --> src/lib.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | use tokio::time::Sleep;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/lib.rs:1015:64
[INFO] [stdout]      |
[INFO] [stdout] 1015 |     async fn http_to_server(&'a self,mut stream:TokioTcpStream,mut buffer: [u8;BUF_NUM]) -> TokioTcpStream {
[INFO] [stdout]      |                                                                ----^^^^^^
[INFO] [stdout]      |                                                                |
[INFO] [stdout]      |                                                                help: remove this `mut`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:906:13
[INFO] [stdout]     |
[INFO] [stdout] 906 |         let mut listener = TokioTcpListener::bind(&ipaddres[0]).await.map_err( stringify ).unwrap();
[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/lib.rs:911:18
[INFO] [stdout]     |
[INFO] [stdout] 911 |             let (mut socket, address) = listener.accept().await.unwrap();
[INFO] [stdout]     |                  ----^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/func.rs:174:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         get => {
[INFO] [stdout]     |                         --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 174 |                         post => {
[INFO] [stdout]     |                         ^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/func.rs:181:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         get => {
[INFO] [stdout]     |                         --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 181 |                         put => {
[INFO] [stdout]     |                         ^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/func.rs:191:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         get => {
[INFO] [stdout]     |                         --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 191 |                         del => {
[INFO] [stdout]     |                         ^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/func.rs:202:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         get => {
[INFO] [stdout]     |                         --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 202 |                         _ => {},
[INFO] [stdout]     |                         ^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/func.rs:168:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         get => {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_get`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `post`
[INFO] [stdout]    --> src/func.rs:174:25
[INFO] [stdout]     |
[INFO] [stdout] 174 |                         post => {
[INFO] [stdout]     |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_post`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `put`
[INFO] [stdout]    --> src/func.rs:181:25
[INFO] [stdout]     |
[INFO] [stdout] 181 |                         put => {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_put`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `del`
[INFO] [stdout]    --> src/func.rs:191:25
[INFO] [stdout]     |
[INFO] [stdout] 191 |                         del => {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_del`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `urldatas` is never read
[INFO] [stdout]    --> src/func.rs:117:33
[INFO] [stdout]     |
[INFO] [stdout] 117 |           let mut urldatas: Met = Met {
[INFO] [stdout]     |  _________________________________^
[INFO] [stdout] 118 | |             state: Vec::new(),
[INFO] [stdout] 119 | |             methods: Vec::new(),
[INFO] [stdout] 120 | |             url: Vec::new(),
[INFO] [stdout] 121 | |         };
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `gg` is never read
[INFO] [stdout]    --> src/func.rs:256:22
[INFO] [stdout]     |
[INFO] [stdout] 256 |         let mut gg = Some(format!(""));
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `b_b_i` is assigned to, but never used
[INFO] [stdout]    --> src/func.rs:564:9
[INFO] [stdout]     |
[INFO] [stdout] 564 |     let mut b_b_i: usize = 0;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_b_b_i` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `b_b_i` is never read
[INFO] [stdout]    --> src/func.rs:575:9
[INFO] [stdout]     |
[INFO] [stdout] 575 |         b_b_i += 1;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `fhtml` is never read
[INFO] [stdout]   --> src/http.rs:72:28
[INFO] [stdout]    |
[INFO] [stdout] 72 |     let mut fhtml:String = "".to_string();
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `n` is never read
[INFO] [stdout]    --> src/lib.rs:406:26
[INFO] [stdout]     |
[INFO] [stdout] 406 |         let mut n: i32 = 0;
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `pzjg` is never read
[INFO] [stdout]    --> src/lib.rs:473:24
[INFO] [stdout]     |
[INFO] [stdout] 473 |         let mut pzjg = false;
[INFO] [stdout]     |                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `contents` is never read
[INFO] [stdout]    --> src/lib.rs:521:47
[INFO] [stdout]     |
[INFO] [stdout] 521 |                     let mut contents:String = String::from("");
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `contents` is never read
[INFO] [stdout]    --> src/lib.rs:541:47
[INFO] [stdout]     |
[INFO] [stdout] 541 |                     let mut contents:String = String::from("");
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `webserver`
[INFO] [stdout]    --> src/lib.rs:606:13
[INFO] [stdout]     |
[INFO] [stdout] 606 |         let webserver = "Upgrade: websocket";
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_webserver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `status_line` is assigned to, but never used
[INFO] [stdout]    --> src/lib.rs:607:13
[INFO] [stdout]     |
[INFO] [stdout] 607 |         let mut status_line: &str = "";
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_status_line` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `response`
[INFO] [stdout]    --> src/lib.rs:630:17
[INFO] [stdout]     |
[INFO] [stdout] 630 |             let response: &[u8] = "无广播消息！".as_bytes();
[INFO] [stdout]     |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_response`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `n` is never read
[INFO] [stdout]    --> src/lib.rs:596:26
[INFO] [stdout]     |
[INFO] [stdout] 596 |         let mut n: i32 = 0;
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `n` is never read
[INFO] [stdout]    --> src/lib.rs:657:9
[INFO] [stdout]     |
[INFO] [stdout] 657 |         n += 1;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `status_line` is never read
[INFO] [stdout]    --> src/lib.rs:638:14
[INFO] [stdout]     |
[INFO] [stdout] 638 |             (status_line,filename) = if buffer.starts_with(ai) {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `filename` is never read
[INFO] [stdout]    --> src/lib.rs:638:26
[INFO] [stdout]     |
[INFO] [stdout] 638 |             (status_line,filename) = if buffer.starts_with(ai) {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `webport` is never read
[INFO] [stdout]    --> src/lib.rs:819:27
[INFO] [stdout]     |
[INFO] [stdout] 819 |         let mut webport = ["";4];
[INFO] [stdout]     |                           ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]    --> src/lib.rs:911:30
[INFO] [stdout]     |
[INFO] [stdout] 911 |             let (mut socket, address) = listener.accept().await.unwrap();
[INFO] [stdout]     |                              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `response`
[INFO] [stdout]    --> src/lib.rs:969:33
[INFO] [stdout]     |
[INFO] [stdout] 969 | ...                   let response = dl.theone(0);
[INFO] [stdout]     |                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_response`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dlp`
[INFO] [stdout]    --> src/lib.rs:982:13
[INFO] [stdout]     |
[INFO] [stdout] 982 |         let dlp = dl.theone(0);
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_dlp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `stream` is never read
[INFO] [stdout]     --> src/lib.rs:1001:21
[INFO] [stdout]      |
[INFO] [stdout] 1001 |                     stream = self.http_to_server(stream,buffer).await;
[INFO] [stdout]      |                     ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `n` is never read
[INFO] [stdout]    --> src/lib.rs:928:26
[INFO] [stdout]     |
[INFO] [stdout] 928 |         let mut n: i32 = 0;
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `pzjg` is never read
[INFO] [stdout]     --> src/lib.rs:1026:24
[INFO] [stdout]      |
[INFO] [stdout] 1026 |         let mut pzjg = false;
[INFO] [stdout]      |                        ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `contents` is never read
[INFO] [stdout]     --> src/lib.rs:1096:47
[INFO] [stdout]      |
[INFO] [stdout] 1096 |                     let mut contents:String = String::from("");
[INFO] [stdout]      |                                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ipaddnum` is never read
[INFO] [stdout]    --> src/lib.rs:716:5
[INFO] [stdout]     |
[INFO] [stdout] 713 | pub struct  TCmlServer {
[INFO] [stdout]     |             ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 716 |     ipaddnum:usize,//ip个数
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TCmlServer` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `http_setbpost` is never used
[INFO] [stdout]    --> src/lib.rs:755:14
[INFO] [stdout]     |
[INFO] [stdout] 723 | impl <'a >TCmlServer {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 755 |     async fn http_setbpost(&'a mut self,inpost:&'static str){
[INFO] [stdout]     |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/func.rs:332:24
[INFO] [stdout]     |
[INFO] [stdout] 332 |                 name: n.clone(),
[INFO] [stdout]     |                        ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/func.rs:333:23
[INFO] [stdout]     |
[INFO] [stdout] 333 |                 val: v.clone(),
[INFO] [stdout]     |                       ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:185:31
[INFO] [stdout]     |
[INFO] [stdout] 185 |                 let pat = path.clone();
[INFO] [stdout]     |                               ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/lib.rs:852:31
[INFO] [stdout]     |
[INFO] [stdout] 852 |                 let pat = path.clone();
[INFO] [stdout]     |                               ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:916:13
[INFO] [stdout]     |
[INFO] [stdout] 916 | / ...   tokio::spawn(async move {
[INFO] [stdout] 917 | | ...       // socket.write(format!("{:?}\r\nContent-Length:{:?}\r\n\r\n{:?}","HTTP/1.1 200 OK","rust server".len(),"rust server")....
[INFO] [stdout] 918 | | ...       this.handle_client(socket).await;
[INFO] [stdout] 919 | | ...   }).await;
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 916 |             let _ = tokio::spawn(async move {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.68s
[INFO] running `Command { std: "docker" "inspect" "4d216173c08d9480562c69e006c243e63e1ff9c5628bea0e9a6134ea70e599e2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4d216173c08d9480562c69e006c243e63e1ff9c5628bea0e9a6134ea70e599e2", kill_on_drop: false }`
[INFO] [stdout] 4d216173c08d9480562c69e006c243e63e1ff9c5628bea0e9a6134ea70e599e2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] c75ba216e044b9f43efca7ae9120847ceeccea14b749105388728b9ae0c24055
[INFO] running `Command { std: "docker" "start" "-a" "c75ba216e044b9f43efca7ae9120847ceeccea14b749105388728b9ae0c24055", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]   --> src/lib.rs:36:17
[INFO] [stderr]    |
[INFO] [stderr] 36 | use tokio::io::{self, AsyncReadExt};
[INFO] [stderr]    |                 ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Duration` and `timeout`
[INFO] [stderr]   --> src/lib.rs:38:19
[INFO] [stderr]    |
[INFO] [stderr] 38 | use tokio::time::{timeout,Duration};
[INFO] [stderr]    |                   ^^^^^^^ ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ToSocketAddrs`
[INFO] [stderr]   --> src/lib.rs:39:78
[INFO] [stderr]    |
[INFO] [stderr] 39 | use tokio::net::{TcpListener as TokioTcpListener,TcpStream as TokioTcpStream,ToSocketAddrs};
[INFO] [stderr]    |                                                                              ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::net::SocketAddr as TokioSocketAddr`
[INFO] [stderr]   --> src/lib.rs:41:5
[INFO] [stderr]    |
[INFO] [stderr] 41 | use std::net::SocketAddr as TokioSocketAddr;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::time::Sleep`
[INFO] [stderr]   --> src/lib.rs:43:5
[INFO] [stderr]    |
[INFO] [stderr] 43 | use tokio::time::Sleep;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/lib.rs:1015:64
[INFO] [stderr]      |
[INFO] [stderr] 1015 |     async fn http_to_server(&'a self,mut stream:TokioTcpStream,mut buffer: [u8;BUF_NUM]) -> TokioTcpStream {
[INFO] [stderr]      |                                                                ----^^^^^^
[INFO] [stderr]      |                                                                |
[INFO] [stderr]      |                                                                help: remove this `mut`
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/lib.rs:906:13
[INFO] [stderr]     |
[INFO] [stderr] 906 |         let mut listener = TokioTcpListener::bind(&ipaddres[0]).await.map_err( stringify ).unwrap();
[INFO] [stderr]     |             ----^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/lib.rs:911:18
[INFO] [stderr]     |
[INFO] [stderr] 911 |             let (mut socket, address) = listener.accept().await.unwrap();
[INFO] [stderr]     |                  ----^^^^^^
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/func.rs:174:25
[INFO] [stderr]     |
[INFO] [stderr] 168 |                         get => {
[INFO] [stderr]     |                         --- matches any value
[INFO] [stderr] ...
[INFO] [stderr] 174 |                         post => {
[INFO] [stderr]     |                         ^^^^ no value can reach this
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/func.rs:181:25
[INFO] [stderr]     |
[INFO] [stderr] 168 |                         get => {
[INFO] [stderr]     |                         --- matches any value
[INFO] [stderr] ...
[INFO] [stderr] 181 |                         put => {
[INFO] [stderr]     |                         ^^^ no value can reach this
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/func.rs:191:25
[INFO] [stderr]     |
[INFO] [stderr] 168 |                         get => {
[INFO] [stderr]     |                         --- matches any value
[INFO] [stderr] ...
[INFO] [stderr] 191 |                         del => {
[INFO] [stderr]     |                         ^^^ no value can reach this
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/func.rs:202:25
[INFO] [stderr]     |
[INFO] [stderr] 168 |                         get => {
[INFO] [stderr]     |                         --- matches any value
[INFO] [stderr] ...
[INFO] [stderr] 202 |                         _ => {},
[INFO] [stderr]     |                         ^ no value can reach this
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `get`
[INFO] [stderr]    --> src/func.rs:168:25
[INFO] [stderr]     |
[INFO] [stderr] 168 |                         get => {
[INFO] [stderr]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_get`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `post`
[INFO] [stderr]    --> src/func.rs:174:25
[INFO] [stderr]     |
[INFO] [stderr] 174 |                         post => {
[INFO] [stderr]     |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_post`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `put`
[INFO] [stderr]    --> src/func.rs:181:25
[INFO] [stderr]     |
[INFO] [stderr] 181 |                         put => {
[INFO] [stderr]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_put`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `del`
[INFO] [stderr]    --> src/func.rs:191:25
[INFO] [stderr]     |
[INFO] [stderr] 191 |                         del => {
[INFO] [stderr]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_del`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `urldatas` is never read
[INFO] [stderr]    --> src/func.rs:117:33
[INFO] [stderr]     |
[INFO] [stderr] 117 |           let mut urldatas: Met = Met {
[INFO] [stderr]     |  _________________________________^
[INFO] [stderr] 118 | |             state: Vec::new(),
[INFO] [stderr] 119 | |             methods: Vec::new(),
[INFO] [stderr] 120 | |             url: Vec::new(),
[INFO] [stderr] 121 | |         };
[INFO] [stderr]     | |_________^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `gg` is never read
[INFO] [stderr]    --> src/func.rs:256:22
[INFO] [stderr]     |
[INFO] [stderr] 256 |         let mut gg = Some(format!(""));
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: variable `b_b_i` is assigned to, but never used
[INFO] [stderr]    --> src/func.rs:564:9
[INFO] [stderr]     |
[INFO] [stderr] 564 |     let mut b_b_i: usize = 0;
[INFO] [stderr]     |         ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: consider using `_b_b_i` instead
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `b_b_i` is never read
[INFO] [stderr]    --> src/func.rs:575:9
[INFO] [stderr]     |
[INFO] [stderr] 575 |         b_b_i += 1;
[INFO] [stderr]     |         ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `fhtml` is never read
[INFO] [stderr]   --> src/http.rs:72:28
[INFO] [stderr]    |
[INFO] [stderr] 72 |     let mut fhtml:String = "".to_string();
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `n` is never read
[INFO] [stderr]    --> src/lib.rs:406:26
[INFO] [stderr]     |
[INFO] [stderr] 406 |         let mut n: i32 = 0;
[INFO] [stderr]     |                          ^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `pzjg` is never read
[INFO] [stderr]    --> src/lib.rs:473:24
[INFO] [stderr]     |
[INFO] [stderr] 473 |         let mut pzjg = false;
[INFO] [stderr]     |                        ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `contents` is never read
[INFO] [stderr]    --> src/lib.rs:521:47
[INFO] [stderr]     |
[INFO] [stderr] 521 |                     let mut contents:String = String::from("");
[INFO] [stderr]     |                                               ^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `contents` is never read
[INFO] [stderr]    --> src/lib.rs:541:47
[INFO] [stderr]     |
[INFO] [stderr] 541 |                     let mut contents:String = String::from("");
[INFO] [stderr]     |                                               ^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `webserver`
[INFO] [stderr]    --> src/lib.rs:606:13
[INFO] [stderr]     |
[INFO] [stderr] 606 |         let webserver = "Upgrade: websocket";
[INFO] [stderr]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_webserver`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `status_line` is assigned to, but never used
[INFO] [stderr]    --> src/lib.rs:607:13
[INFO] [stderr]     |
[INFO] [stderr] 607 |         let mut status_line: &str = "";
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: consider using `_status_line` instead
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `response`
[INFO] [stderr]    --> src/lib.rs:630:17
[INFO] [stderr]     |
[INFO] [stderr] 630 |             let response: &[u8] = "无广播消息！".as_bytes();
[INFO] [stderr]     |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_response`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `n` is never read
[INFO] [stderr]    --> src/lib.rs:596:26
[INFO] [stderr]     |
[INFO] [stderr] 596 |         let mut n: i32 = 0;
[INFO] [stderr]     |                          ^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `n` is never read
[INFO] [stderr]    --> src/lib.rs:657:9
[INFO] [stderr]     |
[INFO] [stderr] 657 |         n += 1;
[INFO] [stderr]     |         ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `status_line` is never read
[INFO] [stderr]    --> src/lib.rs:638:14
[INFO] [stderr]     |
[INFO] [stderr] 638 |             (status_line,filename) = if buffer.starts_with(ai) {
[INFO] [stderr]     |              ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `filename` is never read
[INFO] [stderr]    --> src/lib.rs:638:26
[INFO] [stderr]     |
[INFO] [stderr] 638 |             (status_line,filename) = if buffer.starts_with(ai) {
[INFO] [stderr]     |                          ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `webport` is never read
[INFO] [stderr]    --> src/lib.rs:819:27
[INFO] [stderr]     |
[INFO] [stderr] 819 |         let mut webport = ["";4];
[INFO] [stderr]     |                           ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `address`
[INFO] [stderr]    --> src/lib.rs:911:30
[INFO] [stderr]     |
[INFO] [stderr] 911 |             let (mut socket, address) = listener.accept().await.unwrap();
[INFO] [stderr]     |                              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `response`
[INFO] [stderr]    --> src/lib.rs:969:33
[INFO] [stderr]     |
[INFO] [stderr] 969 | ...                   let response = dl.theone(0);
[INFO] [stderr]     |                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_response`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `dlp`
[INFO] [stderr]    --> src/lib.rs:982:13
[INFO] [stderr]     |
[INFO] [stderr] 982 |         let dlp = dl.theone(0);
[INFO] [stderr]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_dlp`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `stream` is never read
[INFO] [stderr]     --> src/lib.rs:1001:21
[INFO] [stderr]      |
[INFO] [stderr] 1001 |                     stream = self.http_to_server(stream,buffer).await;
[INFO] [stderr]      |                     ^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `n` is never read
[INFO] [stderr]    --> src/lib.rs:928:26
[INFO] [stderr]     |
[INFO] [stderr] 928 |         let mut n: i32 = 0;
[INFO] [stderr]     |                          ^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `pzjg` is never read
[INFO] [stderr]     --> src/lib.rs:1026:24
[INFO] [stderr]      |
[INFO] [stderr] 1026 |         let mut pzjg = false;
[INFO] [stderr]      |                        ^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `contents` is never read
[INFO] [stderr]     --> src/lib.rs:1096:47
[INFO] [stderr]      |
[INFO] [stderr] 1096 |                     let mut contents:String = String::from("");
[INFO] [stderr]      |                                               ^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: field `ipaddnum` is never read
[INFO] [stderr]    --> src/lib.rs:716:5
[INFO] [stderr]     |
[INFO] [stderr] 713 | pub struct  TCmlServer {
[INFO] [stderr]     |             ---------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 716 |     ipaddnum:usize,//ip个数
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `TCmlServer` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `http_setbpost` is never used
[INFO] [stderr]    --> src/lib.rs:755:14
[INFO] [stderr]     |
[INFO] [stderr] 723 | impl <'a >TCmlServer {
[INFO] [stderr]     | -------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 755 |     async fn http_setbpost(&'a mut self,inpost:&'static str){
[INFO] [stderr]     |              ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]    --> src/func.rs:332:24
[INFO] [stderr]     |
[INFO] [stderr] 332 |                 name: n.clone(),
[INFO] [stderr]     |                        ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]     |
[INFO] [stderr]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stderr]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]    --> src/func.rs:333:23
[INFO] [stderr]     |
[INFO] [stderr] 333 |                 val: v.clone(),
[INFO] [stderr]     |                       ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]     |
[INFO] [stderr]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]    --> src/lib.rs:185:31
[INFO] [stderr]     |
[INFO] [stderr] 185 |                 let pat = path.clone();
[INFO] [stderr]     |                               ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]     |
[INFO] [stderr]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]    --> src/lib.rs:852:31
[INFO] [stderr]     |
[INFO] [stderr] 852 |                 let pat = path.clone();
[INFO] [stderr]     |                               ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]     |
[INFO] [stderr]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:916:13
[INFO] [stderr]     |
[INFO] [stderr] 916 | / ...   tokio::spawn(async move {
[INFO] [stderr] 917 | | ...       // socket.write(format!("{:?}\r\nContent-Length:{:?}\r\n\r\n{:?}","HTTP/1.1 200 OK","rust server".len(),"rust server")....
[INFO] [stderr] 918 | | ...       this.handle_client(socket).await;
[INFO] [stderr] 919 | | ...   }).await;
[INFO] [stderr]     | |______________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 916 |             let _ = tokio::spawn(async move {
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `wscml` (lib) generated 47 warnings (run `cargo fix --lib -p wscml` to apply 21 suggestions)
[INFO] [stderr] warning: `wscml` (lib test) generated 47 warnings (47 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.14s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/wscml-d1f052c2fdb1e23d)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests wscml
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test src/func.rs - Hshell (line 299) ... FAILED
[INFO] [stdout] test src/pubmsg.rs - Textlist::new (line 21) ... FAILED
[INFO] [stdout] test src/func.rs - pr_time (line 620) ... FAILED
[INFO] [stdout] test src/pubmsg.rs - Textlist::theone (line 69) ... FAILED
[INFO] [stdout] test src/func.rs - delvecu8_s (line 582) ... FAILED
[INFO] [stdout] test src/pubmsg.rs - Textlist::push (line 36) ... FAILED
[INFO] [stdout] test src/func.rs - if_split (line 510) ... FAILED
[INFO] [stdout] test src/func.rs - PortR (line 57) ... FAILED
[INFO] [stdout] test src/http.rs - wscmlsuffix (line 7) ... FAILED
[INFO] [stdout] test src/func.rs - cxdy (line 9) ... FAILED
[INFO] [stdout] test src/func.rs - Hshell (line 290) ... FAILED
[INFO] [stdout] test src/pubmsg.rs - Textlist::pop (line 49) ... FAILED
[INFO] [stdout] test src/pubmsg.rs - Textlist::is_empty (line 79) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/func.rs - Hshell (line 299) stdout ----
[INFO] [stdout] error: expected expression, found `$`
[INFO] [stdout]    --> src/func.rs:300:2
[INFO] [stdout]     |
[INFO] [stdout] 300 | {$pname}
[INFO] [stdout]     |  ^ expected expression
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/pubmsg.rs - Textlist::new (line 21) stdout ----
[INFO] [stdout] error[E0425]: cannot find type `Textlist` in this scope
[INFO] [stdout]   --> src/pubmsg.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 | let mut dl: Textlist<T> = pubmsg::Textlist::new(); //新建一个队列
[INFO] [stdout]    |             ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 21 + use wscml::Textlist;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `T` in this scope
[INFO] [stdout]   --> src/pubmsg.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 | let mut dl: Textlist<T> = pubmsg::Textlist::new(); //新建一个队列
[INFO] [stdout]    |                      ^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_pubmsg_rs_21_0<T>() {
[INFO] [stdout]    |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `pubmsg`
[INFO] [stdout]   --> src/pubmsg.rs:22:27
[INFO] [stdout]    |
[INFO] [stdout] 22 | let mut dl: Textlist<T> = pubmsg::Textlist::new(); //新建一个队列
[INFO] [stdout]    |                           ^^^^^^ use of unresolved module or unlinked crate `pubmsg`
[INFO] [stdout]    |
[INFO] [stdout] help: to make use of source file src/pubmsg.rs, use `mod pubmsg` in this file to declare the module
[INFO] [stdout]    |
[INFO] [stdout] 21 + mod pubmsg;
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 21 + use wscml::Textlist;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Textlist`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 22 - let mut dl: Textlist<T> = pubmsg::Textlist::new(); //新建一个队列
[INFO] [stdout] 22 + let mut dl: Textlist<T> = Textlist::new(); //新建一个队列
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `T` in this scope
[INFO] [stdout]   --> src/pubmsg.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 | let d = dl.push(T);
[INFO] [stdout]    |                 ^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: you might be missing a const parameter
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_pubmsg_rs_21_0<const T: /* Type */>() {
[INFO] [stdout]    |                                                                         +++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/func.rs - pr_time (line 620) stdout ----
[INFO] [stdout] error[E0425]: cannot find function `pr_time` in this scope
[INFO] [stdout]    --> src/func.rs:621:1
[INFO] [stdout]     |
[INFO] [stdout] 621 | pr_time("%Y-%m-%d %H:%M:%S");
[INFO] [stdout]     | ^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this function
[INFO] [stdout]     |
[INFO] [stdout] 620 + use wscml::pr_time;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/pubmsg.rs - Textlist::theone (line 69) stdout ----
[INFO] [stdout] error[E0425]: cannot find type `Textlist` in this scope
[INFO] [stdout]   --> src/pubmsg.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 | let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout]    |             ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 69 + use wscml::Textlist;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `T` in this scope
[INFO] [stdout]   --> src/pubmsg.rs:70:22
[INFO] [stdout]    |
[INFO] [stdout] 70 | let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout]    |                      ^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_pubmsg_rs_69_0<T>() {
[INFO] [stdout]    |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `pubmsg`
[INFO] [stdout]   --> src/pubmsg.rs:70:27
[INFO] [stdout]    |
[INFO] [stdout] 70 | let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout]    |                           ^^^^^^ use of unresolved module or unlinked crate `pubmsg`
[INFO] [stdout]    |
[INFO] [stdout] help: to make use of source file src/pubmsg.rs, use `mod pubmsg` in this file to declare the module
[INFO] [stdout]    |
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] [stdout] 69 + mod pubmsg;
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 69 + use wscml::Textlist;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Textlist`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 70 - let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout] 70 + let mut dl: Textlist<T> = Textlist::new();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/func.rs - delvecu8_s (line 582) stdout ----
[INFO] [stdout] error[E0425]: cannot find function `delvecu8_s` in this scope
[INFO] [stdout]    --> src/func.rs:583:1
[INFO] [stdout]     |
[INFO] [stdout] 583 | delvecu8_s(dggetdata[1].clone());
[INFO] [stdout]     | ^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this function
[INFO] [stdout]     |
[INFO] [stdout] 582 + use wscml::delvecu8_s;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `dggetdata` in this scope
[INFO] [stdout]    --> src/func.rs:583:12
[INFO] [stdout]     |
[INFO] [stdout] 583 | delvecu8_s(dggetdata[1].clone());
[INFO] [stdout]     |            ^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/pubmsg.rs - Textlist::push (line 36) stdout ----
[INFO] [stdout] error[E0425]: cannot find type `Textlist` in this scope
[INFO] [stdout]   --> src/pubmsg.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 | let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout]    |             ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 36 + use wscml::Textlist;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `T` in this scope
[INFO] [stdout]   --> src/pubmsg.rs:37:22
[INFO] [stdout]    |
[INFO] [stdout] 37 | let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout]    |                      ^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_pubmsg_rs_36_0<T>() {
[INFO] [stdout]    |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `pubmsg`
[INFO] [stdout]   --> src/pubmsg.rs:37:27
[INFO] [stdout]    |
[INFO] [stdout] 37 | let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout]    |                           ^^^^^^ use of unresolved module or unlinked crate `pubmsg`
[INFO] [stdout]    |
[INFO] [stdout] help: to make use of source file src/pubmsg.rs, use `mod pubmsg` in this file to declare the module
[INFO] [stdout]    |
[INFO] [stdout] 36 + mod pubmsg;
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 36 + use wscml::Textlist;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Textlist`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 37 - let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout] 37 + let mut dl: Textlist<T> = Textlist::new();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `T` in this scope
[INFO] [stdout]   --> src/pubmsg.rs:38:17
[INFO] [stdout]    |
[INFO] [stdout] 38 | let d = dl.push(T);
[INFO] [stdout]    |                 ^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: you might be missing a const parameter
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_pubmsg_rs_36_0<const T: /* Type */>() {
[INFO] [stdout]    |                                                                         +++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/func.rs - if_split (line 510) stdout ----
[INFO] [stdout] error[E0425]: cannot find function `if_split` in this scope
[INFO] [stdout]    --> src/func.rs:511:13
[INFO] [stdout]     |
[INFO] [stdout] 511 | let topbu = if_split(&buffer, httpcode);
[INFO] [stdout]     |             ^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this function
[INFO] [stdout]     |
[INFO] [stdout] 510 + use wscml::if_split;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `buffer` in this scope
[INFO] [stdout]    --> src/func.rs:511:23
[INFO] [stdout]     |
[INFO] [stdout] 511 | let topbu = if_split(&buffer, httpcode);
[INFO] [stdout]     |                       ^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this function
[INFO] [stdout]     |
[INFO] [stdout] 510 + use mini_redis::buffer;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `httpcode` in this scope
[INFO] [stdout]    --> src/func.rs:511:31
[INFO] [stdout]     |
[INFO] [stdout] 511 | let topbu = if_split(&buffer, httpcode);
[INFO] [stdout]     |                               ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/func.rs - PortR (line 57) stdout ----
[INFO] [stdout] error[E0425]: cannot find type `PortR` in this scope
[INFO] [stdout]   --> src/func.rs:58:14
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn index (r: PortR, mut h:Hshell) -> String {
[INFO] [stdout]    |              ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 57 + use wscml::PortR;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Hshell` in this scope
[INFO] [stdout]   --> src/func.rs:58:27
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn index (r: PortR, mut h:Hshell) -> String {
[INFO] [stdout]    |                           ^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 57 + use wscml::Hshell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/func.rs:58:38
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn index (r: PortR, mut h:Hshell) -> String {
[INFO] [stdout]    |    -----                             ^^^^^^ expected `String`, found `()`
[INFO] [stdout]    |    |
[INFO] [stdout]    |    implicitly returns `()` as its body has no tail or `return` expression
[INFO] [stdout] 59 |     let a = r.getg_n("name");
[INFO] [stdout] 60 |     format!("返回代码{}",a);
[INFO] [stdout]    |                            - help: remove this semicolon to return this value
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0425.
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/http.rs - wscmlsuffix (line 7) stdout ----
[INFO] [stdout] error[E0425]: cannot find function `wscmlsuffix` in this scope
[INFO] [stdout]  --> src/http.rs:9:22
[INFO] [stdout]   |
[INFO] [stdout] 9 | let aansbool: bool = wscmlsuffix(topbu,s,i);
[INFO] [stdout]   |                      ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this function
[INFO] [stdout]   |
[INFO] [stdout] 6 + use wscml::wscmlsuffix;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `topbu` in this scope
[INFO] [stdout]  --> src/http.rs:9:34
[INFO] [stdout]   |
[INFO] [stdout] 9 | let aansbool: bool = wscmlsuffix(topbu,s,i);
[INFO] [stdout]   |                                  ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `s` in this scope
[INFO] [stdout]  --> src/http.rs:9:40
[INFO] [stdout]   |
[INFO] [stdout] 9 | let aansbool: bool = wscmlsuffix(topbu,s,i);
[INFO] [stdout]   |                                        ^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `i` in this scope
[INFO] [stdout]  --> src/http.rs:9:42
[INFO] [stdout]   |
[INFO] [stdout] 9 | let aansbool: bool = wscmlsuffix(topbu,s,i);
[INFO] [stdout]   |                                          ^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/func.rs - cxdy (line 9) stdout ----
[INFO] [stdout] error[E0425]: cannot find function `cxdy` in this scope
[INFO] [stdout]   --> src/func.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | cxdy(&ipaddres[0]);
[INFO] [stdout]    | ^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this function
[INFO] [stdout]    |
[INFO] [stdout]  9 + use wscml::cxdy;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `ipaddres` in this scope
[INFO] [stdout]   --> src/func.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | cxdy(&ipaddres[0]);
[INFO] [stdout]    |       ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/func.rs - Hshell (line 290) stdout ----
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `Html` in this scope
[INFO] [stdout]    --> src/func.rs:291:11
[INFO] [stdout]     |
[INFO] [stdout] 291 | let har = Html {
[INFO] [stdout]     |           ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `template` in this scope
[INFO] [stdout]    --> src/func.rs:296:5
[INFO] [stdout]     |
[INFO] [stdout] 296 |     template (harray,"h/yyxzz.html");
[INFO] [stdout]     |     ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0422, E0425.
[INFO] [stdout] For more information about an error, try `rustc --explain E0422`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/pubmsg.rs - Textlist::pop (line 49) stdout ----
[INFO] [stdout] error[E0425]: cannot find type `Textlist` in this scope
[INFO] [stdout]   --> src/pubmsg.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 | let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout]    |             ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 49 + use wscml::Textlist;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `T` in this scope
[INFO] [stdout]   --> src/pubmsg.rs:50:22
[INFO] [stdout]    |
[INFO] [stdout] 50 | let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout]    |                      ^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_pubmsg_rs_49_0<T>() {
[INFO] [stdout]    |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `pubmsg`
[INFO] [stdout]   --> src/pubmsg.rs:50:27
[INFO] [stdout]    |
[INFO] [stdout] 50 | let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout]    |                           ^^^^^^ use of unresolved module or unlinked crate `pubmsg`
[INFO] [stdout]    |
[INFO] [stdout] help: to make use of source file src/pubmsg.rs, use `mod pubmsg` in this file to declare the module
[INFO] [stdout]    |
[INFO] [stdout] 49 + mod pubmsg;
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 49 + use wscml::Textlist;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Textlist`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 50 - let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout] 50 + let mut dl: Textlist<T> = Textlist::new();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/pubmsg.rs - Textlist::is_empty (line 79) stdout ----
[INFO] [stdout] error[E0425]: cannot find type `Textlist` in this scope
[INFO] [stdout]   --> src/pubmsg.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 | let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout]    |             ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 79 + use wscml::Textlist;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `T` in this scope
[INFO] [stdout]   --> src/pubmsg.rs:80:22
[INFO] [stdout]    |
[INFO] [stdout] 80 | let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout]    |                      ^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_pubmsg_rs_79_0<T>() {
[INFO] [stdout]    |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `pubmsg`
[INFO] [stdout]   --> src/pubmsg.rs:80:27
[INFO] [stdout]    |
[INFO] [stdout] 80 | let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout]    |                           ^^^^^^ use of unresolved module or unlinked crate `pubmsg`
[INFO] [stdout]    |
[INFO] [stdout] help: to make use of source file src/pubmsg.rs, use `mod pubmsg` in this file to declare the module
[INFO] [stdout]    |
[INFO] [stdout] 79 + mod pubmsg;
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 79 + use wscml::Textlist;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Textlist`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 80 - let mut dl: Textlist<T> = pubmsg::Textlist::new();
[INFO] [stdout] 80 + let mut dl: Textlist<T> = Textlist::new();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/pubmsg.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_pubmsg_rs_79_0() {
[INFO] [stdout]    |                                                                           - help: try adding a return type: `-> bool`
[INFO] [stdout] ...
[INFO] [stdout] 82 |     true
[INFO] [stdout]    |     ^^^^ expected `()`, found `bool`
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/pubmsg.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_pubmsg_rs_79_0() {
[INFO] [stdout]    |                                                                           - help: try adding a return type: `-> bool`
[INFO] [stdout] ...
[INFO] [stdout] 84 |     false
[INFO] [stdout]    |     ^^^^^ expected `()`, found `bool`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/func.rs - Hshell (line 290)
[INFO] [stdout]     src/func.rs - Hshell (line 299)
[INFO] [stdout]     src/func.rs - PortR (line 57)
[INFO] [stdout]     src/func.rs - cxdy (line 9)
[INFO] [stdout]     src/func.rs - delvecu8_s (line 582)
[INFO] [stdout]     src/func.rs - if_split (line 510)
[INFO] [stdout]     src/func.rs - pr_time (line 620)
[INFO] [stdout]     src/http.rs - wscmlsuffix (line 7)
[INFO] [stdout]     src/pubmsg.rs - Textlist::is_empty (line 79)
[INFO] [stdout]     src/pubmsg.rs - Textlist::new (line 21)
[INFO] [stdout]     src/pubmsg.rs - Textlist::pop (line 49)
[INFO] [stdout]     src/pubmsg.rs - Textlist::push (line 36)
[INFO] [stdout]     src/pubmsg.rs - Textlist::theone (line 69)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 13 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.42s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "c75ba216e044b9f43efca7ae9120847ceeccea14b749105388728b9ae0c24055", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c75ba216e044b9f43efca7ae9120847ceeccea14b749105388728b9ae0c24055", kill_on_drop: false }`
[INFO] [stdout] c75ba216e044b9f43efca7ae9120847ceeccea14b749105388728b9ae0c24055
