[INFO] cloning repository https://github.com/lqjdm/ohos_shadowsocks
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lqjdm/ohos_shadowsocks" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flqjdm%2Fohos_shadowsocks", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flqjdm%2Fohos_shadowsocks'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8782c3ea22b7f61256e966c7d5695376d6d6dc30
[INFO] checking lqjdm/ohos_shadowsocks against 0335fc7ee9e33d92e03d99f3e2fb0fe6119f3cc0 for pr-158915-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flqjdm%2Fohos_shadowsocks" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/lqjdm/ohos_shadowsocks
[INFO] finished tweaking git repo https://github.com/lqjdm/ohos_shadowsocks
[INFO] tweaked toml for git repo https://github.com/lqjdm/ohos_shadowsocks written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/lqjdm/ohos_shadowsocks on toolchain 0335fc7ee9e33d92e03d99f3e2fb0fe6119f3cc0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0335fc7ee9e33d92e03d99f3e2fb0fe6119f3cc0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/lqjdm/ohos_shadowsocks already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0335fc7ee9e33d92e03d99f3e2fb0fe6119f3cc0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]  --> crates/shadowsocks/Cargo.toml:7:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | readme = "README.md"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `shadowsocks` (manifest) generated 1 warning
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]    --> Cargo.toml:196:1
[INFO] [stderr]     |
[INFO] [stderr] 196 | readme = "README.md"
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `shadowsocks-rust` (manifest) generated 1 warning
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]  --> crates/shadowsocks-service/Cargo.toml:7:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | readme = "README.md"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `shadowsocks-service` (manifest) generated 1 warning
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded windows-service v0.8.1
[INFO] [stderr]   Downloaded tcmalloc-sys v0.3.0
[INFO] [stderr]   Downloaded tcmalloc v0.3.0
[INFO] [stderr]   Downloaded xdg v3.0.0
[INFO] [stderr]   Downloaded syslog-tracing v0.3.1
[INFO] [stderr]   Downloaded snmalloc-rs v0.7.4
[INFO] [stderr]   Downloaded sysexits v0.13.0
[INFO] [stderr]   Downloaded tun v0.8.14
[INFO] [stderr]   Downloaded trait-variant v0.1.3
[INFO] [stderr]   Downloaded sm4 v0.5.1
[INFO] [stderr]   Downloaded spin v0.12.2
[INFO] [stderr]   Downloaded tokio-tfo v0.4.3
[INFO] [stderr]   Downloaded syn v3.0.0
[INFO] [stderr]   Downloaded shadowsocks-crypto v0.7.0
[INFO] [stderr]   Downloaded sendfd v0.4.4
[INFO] [stderr]   Downloaded sealed v0.7.0
[INFO] [stderr]   Downloaded kqueue v1.2.0
[INFO] [stderr]   Downloaded inotify v0.11.2
[INFO] [stderr]   Downloaded inotify-sys v0.1.7
[INFO] [stderr]   Downloaded lru_time_cache v0.11.11
[INFO] [stderr]   Downloaded snmalloc-sys v0.7.4
[INFO] [stderr]   Downloaded camellia v0.1.0
[INFO] [stderr]   Downloaded ipconfig v0.3.4
[INFO] [stderr]   Downloaded h3-quinn v0.0.10
[INFO] [stderr]   Downloaded aws-lc-rs v1.17.1
[INFO] [stderr]   Downloaded hickory-resolver v0.26.1
[INFO] [stderr]   Downloaded env_logger v0.11.11
[INFO] [stderr]   Downloaded env_filter v2.0.0
[INFO] [stderr]   Downloaded dynosaur v0.3.1
[INFO] [stderr]   Downloaded prefix-trie v0.8.4
[INFO] [stderr]   Downloaded dynosaur_derive v0.3.1
[INFO] [stderr]   Downloaded byte_string v1.0.0
[INFO] [stderr]   Downloaded hickory-net v0.26.1
[INFO] [stderr]   Downloaded jiff-static v0.2.31
[INFO] [stderr]   Downloaded bloomfilter v3.0.1
[INFO] [stderr]   Downloaded h3 v0.0.8
[INFO] [stderr]   Downloaded smoltcp v0.13.1
[INFO] [stderr]   Downloaded iprange v0.6.7
[INFO] [stderr]   Downloaded rocksdb v0.24.0
[INFO] [stderr]   Downloaded json5 v1.3.1
[INFO] [stderr]   Downloaded hickory-proto v0.26.1
[INFO] [stderr]   Downloaded rpmalloc v0.2.2
[INFO] [stderr]   Downloaded bson v3.1.0
[INFO] [stderr]   Downloaded rpmalloc-sys v0.2.3+b097fd0
[INFO] [stderr]   Downloaded wintun-bindings v0.7.39
[INFO] [stderr]   Downloaded mimalloc v0.1.52
[INFO] [stderr]   Downloaded log4rs v1.4.0
[INFO] [stderr]   Downloaded typemap-ors v1.0.0
[INFO] [stderr]   Downloaded unsafe-any-ors v1.0.0
[INFO] [stderr]   Downloaded destructure_traitobject v0.2.0
[INFO] [stderr]   Downloaded thread-id v5.1.0
[INFO] [stderr]   Downloaded mock_instant v0.6.1
[INFO] [stderr]   Downloaded humantime v2.4.0
[INFO] [stderr]   Downloaded etherparse v0.21.0
[INFO] [stderr]   Downloaded jiff v0.2.31
[INFO] [stderr]   Downloaded libmimalloc-sys v0.1.49
[INFO] [stderr]   Downloaded jemallocator v0.5.4
[INFO] [stderr]   Downloaded build-time v0.1.3
[INFO] [stderr]   Downloaded jemalloc-sys v0.5.4+5.3.0-patched
[INFO] [stderr]   Downloaded librocksdb-sys v0.17.3+10.4.2
[INFO] [stderr]   Downloaded openssl-src v300.6.1+3.6.3
[INFO] [stderr]   Downloaded aws-lc-sys v0.42.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 5de2ba48c9033f5396f41892fbc76cf6b5f0a322d76676de3c48310ddb49e9c8
[INFO] running `Command { std: "docker" "start" "5de2ba48c9033f5396f41892fbc76cf6b5f0a322d76676de3c48310ddb49e9c8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5de2ba48c9033f5396f41892fbc76cf6b5f0a322d76676de3c48310ddb49e9c8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5de2ba48c9033f5396f41892fbc76cf6b5f0a322d76676de3c48310ddb49e9c8" "/opt/rustwide/cargo-home/bin/cargo" "+0335fc7ee9e33d92e03d99f3e2fb0fe6119f3cc0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5de2ba48c9033f5396f41892fbc76cf6b5f0a322d76676de3c48310ddb49e9c8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5de2ba48c9033f5396f41892fbc76cf6b5f0a322d76676de3c48310ddb49e9c8" "/opt/rustwide/cargo-home/bin/cargo" "+0335fc7ee9e33d92e03d99f3e2fb0fe6119f3cc0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]  --> crates/shadowsocks/Cargo.toml:7:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | readme = "README.md"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `shadowsocks` (manifest) generated 1 warning
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]    --> Cargo.toml:196:1
[INFO] [stderr]     |
[INFO] [stderr] 196 | readme = "README.md"
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `shadowsocks-rust` (manifest) generated 1 warning
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]  --> crates/shadowsocks-service/Cargo.toml:7:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | readme = "README.md"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `shadowsocks-service` (manifest) generated 1 warning
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling syn v3.0.0
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]     Checking futures-core v0.3.33
[INFO] [stderr]     Checking hybrid-array v0.4.13
[INFO] [stderr]     Checking futures-sink v0.3.33
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]     Checking once_cell v1.21.4
[INFO] [stderr]    Compiling aws-lc-rs v1.17.1
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]    Compiling thiserror v2.0.19
[INFO] [stderr]     Checking rustls-pki-types v1.15.0
[INFO] [stderr]     Checking regex-syntax v0.8.11
[INFO] [stderr]     Checking cmov v0.5.4
[INFO] [stderr]     Checking futures-io v0.3.33
[INFO] [stderr]     Checking futures-task v0.3.33
[INFO] [stderr]     Checking futures-channel v0.3.33
[INFO] [stderr]    Compiling rustls v0.23.41
[INFO] [stderr]     Checking either v1.16.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling inotify-sys v0.1.7
[INFO] [stderr]    Compiling cc v1.2.66
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.20
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking arrayvec v0.7.8
[INFO] [stderr]     Checking data-encoding v2.11.0
[INFO] [stderr]     Checking uuid v1.23.4
[INFO] [stderr]     Checking ctutils v0.4.2
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking poly1305 v0.8.0
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking chacha20 v0.9.1
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking webpki-roots v1.0.9
[INFO] [stderr]     Checking tagptr v0.2.0
[INFO] [stderr]     Checking constant_time_eq v0.4.2
[INFO] [stderr]     Checking camellia v0.1.0
[INFO] [stderr]     Checking inotify v0.11.2
[INFO] [stderr]     Checking arc-swap v1.9.2
[INFO] [stderr]     Checking notify-types v2.1.0
[INFO] [stderr]     Checking cpubits v0.1.1
[INFO] [stderr]     Checking resolv-conf v0.7.6
[INFO] [stderr]     Checking spin v0.12.2
[INFO] [stderr]     Checking moka v0.12.15
[INFO] [stderr]     Checking byte_string v1.0.0
[INFO] [stderr]     Checking lru_time_cache v0.11.11
[INFO] [stderr]     Checking regex-automata v0.4.16
[INFO] [stderr]    Compiling memchr v2.8.2
[INFO] [stderr]     Checking chacha20poly1305 v0.10.1
[INFO] [stderr]     Checking crypto-common v0.2.2
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]     Checking block-buffer v0.12.1
[INFO] [stderr]     Checking inout v0.2.2
[INFO] [stderr]    Compiling nix v0.31.3
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling heapless v0.9.3
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking hash32 v0.3.1
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking simd-adler32 v0.3.9
[INFO] [stderr]    Compiling smoltcp v0.13.1
[INFO] [stderr]     Checking time v0.3.55
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking managed v0.8.0
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking destructure_traitobject v0.2.0
[INFO] [stderr]     Checking ucd-trie v0.1.7
[INFO] [stderr]     Checking rustls-native-certs v0.8.4
[INFO] [stderr]     Checking unsafe-any-ors v1.0.0
[INFO] [stderr]     Checking flate2 v1.1.9
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking http-body-util v0.1.4
[INFO] [stderr]     Checking digest v0.11.3
[INFO] [stderr]     Checking cipher v0.5.2
[INFO] [stderr]    Compiling aws-lc-sys v0.42.0
[INFO] [stderr]    Compiling blake3 v1.8.6
[INFO] [stderr]     Checking hmac v0.13.0
[INFO] [stderr]     Checking sha1 v0.11.0
[INFO] [stderr]     Checking hkdf v0.13.0
[INFO] [stderr]     Checking md-5 v0.11.0
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]     Checking aes v0.9.2
[INFO] [stderr]     Checking etherparse v0.21.0
[INFO] [stderr]     Checking ordered-float v2.10.1
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]     Checking unsafe-libyaml v0.2.11
[INFO] [stderr]     Checking terminal_size v0.4.4
[INFO] [stderr]     Checking dirs-sys v0.5.0
[INFO] [stderr]     Checking chrono v0.4.45
[INFO] [stderr]     Checking clap_builder v4.6.5
[INFO] [stderr]     Checking rand v0.9.4
[INFO] [stderr]     Checking typemap-ors v1.0.0
[INFO] [stderr]     Checking rtoolbox v0.0.5
[INFO] [stderr]     Checking thread-id v5.1.0
[INFO] [stderr]     Checking log-mdc v0.1.0
[INFO] [stderr]     Checking mock_instant v0.6.1
[INFO] [stderr]     Checking humantime v2.4.0
[INFO] [stderr]     Checking rpassword v7.5.4
[INFO] [stderr]     Checking log v0.4.33
[INFO] [stderr]     Checking serde_json v1.0.151
[INFO] [stderr]     Checking mio v1.2.1
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking directories v6.0.0
[INFO] [stderr]     Checking sysexits v0.13.0
[INFO] [stderr]     Checking qrcode v0.14.1
[INFO] [stderr]     Checking xdg v3.0.0
[INFO] [stderr]     Checking jiff v0.2.31
[INFO] [stderr]     Checking notify v8.2.0
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling thiserror-impl v2.0.19
[INFO] [stderr]    Compiling sealed v0.7.0
[INFO] [stderr]     Checking clap v4.6.5
[INFO] [stderr]     Checking regex v1.13.1
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking env_filter v2.0.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling futures-macro v0.3.33
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling pin-project-internal v1.1.13
[INFO] [stderr]    Compiling dynosaur_derive v0.3.1
[INFO] [stderr]    Compiling trait-variant v0.1.3
[INFO] [stderr]    Compiling tun v0.8.14
[INFO] [stderr]     Checking zerofrom v0.1.8
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling build-time v0.1.3
[INFO] [stderr]     Checking env_logger v0.11.11
[INFO] [stderr]     Checking tokio v1.53.1
[INFO] [stderr]     Checking yoke v0.8.3
[INFO] [stderr]     Checking futures-util v0.3.33
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]     Checking ipnet v2.12.1
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking json5 v1.3.1
[INFO] [stderr]     Checking serde-value v0.7.0
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]     Checking prefix-trie v0.8.4
[INFO] [stderr]     Checking iprange v0.6.7
[INFO] [stderr]     Checking pin-project v1.1.13
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking dynosaur v0.3.1
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]     Checking log4rs v1.4.0
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]     Checking tracing-appender v0.2.5
[INFO] [stderr]     Checking syslog-tracing v0.3.1
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]     Checking futures-executor v0.3.33
[INFO] [stderr]     Checking futures v0.3.33
[INFO] [stderr]     Checking idna_adapter v1.2.2
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking sendfd v0.4.4
[INFO] [stderr]     Checking tokio-tfo v0.4.3
[INFO] [stderr]     Checking hickory-proto v0.26.1
[INFO] [stderr]     Checking h2 v0.4.15
[INFO] [stderr]     Checking hyper v1.11.0
[INFO] [stderr]     Checking rustls-webpki v0.103.13
[INFO] [stderr]     Checking shadowsocks-crypto v0.7.0
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking hickory-net v0.26.1
[INFO] [stderr]     Checking hickory-resolver v0.26.1
[INFO] [stderr]     Checking shadowsocks v1.25.0 (/opt/rustwide/workdir/crates/shadowsocks)
[INFO] [stderr]     Checking shadowsocks-service v1.25.0 (/opt/rustwide/workdir/crates/shadowsocks-service)
[INFO] [stdout] warning: overflow evaluating the requirement `impl futures::Future<Output = Result<(), std::io::Error>>: std::marker::Send`
[INFO] [stdout]    --> crates/shadowsocks-service/src/local/dns/server.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 | /             tokio::spawn(Self::handle_tcp_stream(
[INFO] [stdout] 274 | |                 self.client.clone(),
[INFO] [stdout] 275 | |                 stream,
[INFO] [stdout] 276 | |                 peer_addr,
[INFO] [stdout] 277 | |                 self.local_addr.clone(),
[INFO] [stdout] 278 | |                 self.remote_addr.clone(),
[INFO] [stdout] 279 | |             ));
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `{async fn body of DnsTcpServer::handle_tcp_stream()}: std::marker::Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@crates/shadowsocks-service/src/local/dns/server.rs:289:25: 351:6}: std::marker::Send`
[INFO] [stdout]     = note: which requires `impl futures::Future<Output = Result<hickory_resolver::hickory_proto::op::Message, std::io::Error>>: std::marker::Send`
[INFO] [stdout]     = note: which requires `{async fn body of local::dns::server::DnsClient::resolve()}: std::marker::Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@crates/shadowsocks-service/src/local/dns/server.rs:744:30: 786:6}: std::marker::Send`
[INFO] [stdout]     = note: which requires `impl futures::Future<Output = (Result<hickory_resolver::hickory_proto::op::Message, std::io::Error>, bool)>: std::marker::Send`
[INFO] [stdout]     = note: which requires `{async fn body of local::dns::server::DnsClient::acl_lookup()}: std::marker::Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@crates/shadowsocks-service/src/local/dns/server.rs:793:38: 849:6}: std::marker::Send`
[INFO] [stdout]     = note: which requires `std::future::PollFn<{closure@/opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/macros/select.rs:664:46: 664:50}>: std::marker::Send`
[INFO] [stdout]     = note: which requires `{closure@/opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/macros/select.rs:664:46: 664:50}: std::marker::Send`
[INFO] [stdout]     = note: which requires `(&mut u8, &mut (&mut Pin<&mut impl futures::Future<Output = Result<hickory_resolver::hickory_proto::op::Message, Error>>>, _)): std::marker::Send`
[INFO] [stdout]     = note: which requires `&mut (&mut Pin<&mut impl futures::Future<Output = Result<hickory_resolver::hickory_proto::op::Message, std::io::Error>>>, &mut Pin<_>): std::marker::Send`
[INFO] [stdout]     = note: which requires `(&mut Pin<&mut impl futures::Future<Output = Result<hickory_resolver::hickory_proto::op::Message, std::io::Error>>>, &mut Pin<&mut _>): std::marker::Send`
[INFO] [stdout]     = note: which requires `&mut Pin<&mut {async block@crates/shadowsocks-service/src/local/dns/server.rs:811:23: 811:28}>: std::marker::Send`
[INFO] [stdout]     = note: which requires `Pin<&mut {async block@crates/shadowsocks-service/src/local/dns/server.rs:811:23: 811:28}>: std::marker::Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`shadowsocks_service`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `impl futures::Future<Output = Result<(), std::io::Error>>: std::marker::Send`
[INFO] [stdout]    --> crates/shadowsocks-service/src/local/dns/server.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 | /             tokio::spawn(Self::handle_tcp_stream(
[INFO] [stdout] 274 | |                 self.client.clone(),
[INFO] [stdout] 275 | |                 stream,
[INFO] [stdout] 276 | |                 peer_addr,
[INFO] [stdout] 277 | |                 self.local_addr.clone(),
[INFO] [stdout] 278 | |                 self.remote_addr.clone(),
[INFO] [stdout] 279 | |             ));
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `{async fn body of DnsTcpServer::handle_tcp_stream()}: std::marker::Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@crates/shadowsocks-service/src/local/dns/server.rs:289:25: 351:6}: std::marker::Send`
[INFO] [stdout]     = note: which requires `impl futures::Future<Output = Result<hickory_resolver::hickory_proto::op::Message, std::io::Error>>: std::marker::Send`
[INFO] [stdout]     = note: which requires `{async fn body of local::dns::server::DnsClient::resolve()}: std::marker::Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@crates/shadowsocks-service/src/local/dns/server.rs:744:30: 786:6}: std::marker::Send`
[INFO] [stdout]     = note: which requires `impl futures::Future<Output = (Result<hickory_resolver::hickory_proto::op::Message, std::io::Error>, bool)>: std::marker::Send`
[INFO] [stdout]     = note: which requires `{async fn body of local::dns::server::DnsClient::acl_lookup()}: std::marker::Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@crates/shadowsocks-service/src/local/dns/server.rs:793:38: 849:6}: std::marker::Send`
[INFO] [stdout]     = note: which requires `std::future::PollFn<{closure@/opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/macros/select.rs:664:46: 664:50}>: std::marker::Send`
[INFO] [stdout]     = note: which requires `{closure@/opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/macros/select.rs:664:46: 664:50}: std::marker::Send`
[INFO] [stdout]     = note: which requires `(&mut u8, &mut (&mut Pin<&mut impl futures::Future<Output = Result<hickory_resolver::hickory_proto::op::Message, Error>>>, _)): std::marker::Send`
[INFO] [stdout]     = note: which requires `&mut (&mut Pin<&mut impl futures::Future<Output = Result<hickory_resolver::hickory_proto::op::Message, std::io::Error>>>, &mut Pin<_>): std::marker::Send`
[INFO] [stdout]     = note: which requires `(&mut Pin<&mut impl futures::Future<Output = Result<hickory_resolver::hickory_proto::op::Message, std::io::Error>>>, &mut Pin<&mut _>): std::marker::Send`
[INFO] [stdout]     = note: which requires `&mut Pin<&mut {async block@crates/shadowsocks-service/src/local/dns/server.rs:811:23: 811:28}>: std::marker::Send`
[INFO] [stdout]     = note: which requires `Pin<&mut {async block@crates/shadowsocks-service/src/local/dns/server.rs:811:23: 811:28}>: std::marker::Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`shadowsocks_service`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking shadowsocks-rust v1.25.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: overflow evaluating the requirement `impl futures::Future<Output = ()>: std::marker::Send`
[INFO] [stdout]     --> src/service/local.rs:1012:14
[INFO] [stdout]      |
[INFO] [stdout] 1012 |             .boxed(),
[INFO] [stdout]      |              ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: which requires `{async fn body of ServerReloader::launch_reload_server_task()}: std::marker::Send`
[INFO] [stdout]      = note: which requires `{coroutine witness@src/service/local.rs:1132:46: 1135:6}: std::marker::Send`
[INFO] [stdout]      = note: which requires `impl futures::Future<Output = ()>: std::marker::Send`
[INFO] [stdout]      = note: which requires `{async fn body of ServerReloader::launch_signal_reload_server_task()}: std::marker::Send`
[INFO] [stdout]      = note: which requires `{coroutine witness@src/service/local.rs:1118:64: 1129:6}: std::marker::Send`
[INFO] [stdout]      = note: which requires `impl futures::Future<Output = std::result::Result<(), Box<(dyn StdError + 'static)>>>: std::marker::Send`
[INFO] [stdout]      = note: which requires `{async fn body of ServerReloader::run_once()}: std::marker::Send`
[INFO] [stdout]      = note: which requires `{coroutine witness@src/service/local.rs:1075:72: 1115:6}: std::marker::Send`
[INFO] [stdout]      = note: which requires `impl futures::Future<Output = std::result::Result<(), std::io::Error>>: std::marker::Send`
[INFO] [stdout]      = note: which requires `{async fn body of PingBalancer::reset_servers()}: std::marker::Send`
[INFO] [stdout]      = note: which requires `{coroutine witness@PingBalancer::reset_servers::{closure#0}}: std::marker::Send`
[INFO] [stdout]      = note: which requires `impl futures::Future<Output = std::result::Result<(Arc<ping_balancer::PingBalancerContext>, ping_balancer::PingBalancerContextTask), std::io::Error>>: std::marker::Send`
[INFO] [stdout]      = note: which requires `{async fn body of ping_balancer::PingBalancerContext::new()}: std::marker::Send`
[INFO] [stdout]      = note: which requires `{coroutine witness@ping_balancer::PingBalancerContext::new::{closure#0}}: std::marker::Send`
[INFO] [stdout]      = note: which requires `impl futures::Future<Output = ()>: std::marker::Send`
[INFO] [stdout]      = note: and so on...
[INFO] [stdout]      = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]      = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`shadowsocks_rust`)
[INFO] [stdout]      = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]      = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `impl futures::Future<Output = ()>: std::marker::Send`
[INFO] [stdout]     --> src/service/local.rs:1012:14
[INFO] [stdout]      |
[INFO] [stdout] 1012 |             .boxed(),
[INFO] [stdout]      |              ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: which requires `{async fn body of ServerReloader::launch_reload_server_task()}: std::marker::Send`
[INFO] [stdout]      = note: which requires `{coroutine witness@src/service/local.rs:1132:46: 1135:6}: std::marker::Send`
[INFO] [stdout]      = note: which requires `impl futures::Future<Output = ()>: std::marker::Send`
[INFO] [stdout]      = note: which requires `{async fn body of ServerReloader::launch_signal_reload_server_task()}: std::marker::Send`
[INFO] [stdout]      = note: which requires `{coroutine witness@src/service/local.rs:1118:64: 1129:6}: std::marker::Send`
[INFO] [stdout]      = note: which requires `impl futures::Future<Output = std::result::Result<(), Box<(dyn StdError + 'static)>>>: std::marker::Send`
[INFO] [stdout]      = note: which requires `{async fn body of ServerReloader::run_once()}: std::marker::Send`
[INFO] [stdout]      = note: which requires `{coroutine witness@src/service/local.rs:1075:72: 1115:6}: std::marker::Send`
[INFO] [stdout]      = note: which requires `impl futures::Future<Output = std::result::Result<(), std::io::Error>>: std::marker::Send`
[INFO] [stdout]      = note: which requires `{async fn body of PingBalancer::reset_servers()}: std::marker::Send`
[INFO] [stdout]      = note: which requires `{coroutine witness@PingBalancer::reset_servers::{closure#0}}: std::marker::Send`
[INFO] [stdout]      = note: which requires `impl futures::Future<Output = std::result::Result<(Arc<ping_balancer::PingBalancerContext>, ping_balancer::PingBalancerContextTask), std::io::Error>>: std::marker::Send`
[INFO] [stdout]      = note: which requires `{async fn body of ping_balancer::PingBalancerContext::new()}: std::marker::Send`
[INFO] [stdout]      = note: which requires `{coroutine witness@ping_balancer::PingBalancerContext::new::{closure#0}}: std::marker::Send`
[INFO] [stdout]      = note: which requires `impl futures::Future<Output = ()>: std::marker::Send`
[INFO] [stdout]      = note: and so on...
[INFO] [stdout]      = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]      = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`shadowsocks_rust`)
[INFO] [stdout]      = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]      = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]   --> tests/dns.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     tokio::spawn(run_local(local_config));
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: which requires `{async fn body of local::run()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@run_local::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<shadowsocks_service::local::Server, std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of shadowsocks_service::local::Server::new()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@shadowsocks_service::local::Server::new::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<OnlineConfigService, std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigServiceBuilder::build()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigServiceBuilder::build::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigService::run_once()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigService::run_once::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `tokio::time::Timeout<impl Future<Output = std::result::Result<(), std::io::Error>>>: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigService::run_once_impl()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigService::run_once_impl::{closure#0}}: Send`
[INFO] [stdout]    = note: and so on...
[INFO] [stdout]    = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]    = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`dns`)
[INFO] [stdout]    = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]    = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]   --> tests/udp.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     tokio::spawn(run_local(get_cli_config()));
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: which requires `{async fn body of local::run()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@run_local::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<shadowsocks_service::local::Server, std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of shadowsocks_service::local::Server::new()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@shadowsocks_service::local::Server::new::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<OnlineConfigService, std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigServiceBuilder::build()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigServiceBuilder::build::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigService::run_once()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigService::run_once::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `tokio::time::Timeout<impl Future<Output = std::result::Result<(), std::io::Error>>>: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigService::run_once_impl()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigService::run_once_impl::{closure#0}}: Send`
[INFO] [stdout]    = note: and so on...
[INFO] [stdout]    = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]    = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`udp`)
[INFO] [stdout]    = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]    = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]   --> tests/http.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     tokio::spawn(run_local(local_config));
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: which requires `{async fn body of local::run()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@run_local::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<shadowsocks_service::local::Server, std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of shadowsocks_service::local::Server::new()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@shadowsocks_service::local::Server::new::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<OnlineConfigService, std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigServiceBuilder::build()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigServiceBuilder::build::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigService::run_once()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigService::run_once::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `tokio::time::Timeout<impl Future<Output = std::result::Result<(), std::io::Error>>>: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigService::run_once_impl()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigService::run_once_impl::{closure#0}}: Send`
[INFO] [stdout]    = note: and so on...
[INFO] [stdout]    = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]    = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`http`)
[INFO] [stdout]    = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]    = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]   --> tests/socks4.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |         tokio::spawn(run_local(client_cfg));
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: which requires `{async fn body of local::run()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@run_local::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<shadowsocks_service::local::Server, std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of shadowsocks_service::local::Server::new()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@shadowsocks_service::local::Server::new::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<OnlineConfigService, std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigServiceBuilder::build()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigServiceBuilder::build::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigService::run_once()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigService::run_once::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `tokio::time::Timeout<impl Future<Output = std::result::Result<(), std::io::Error>>>: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigService::run_once_impl()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigService::run_once_impl::{closure#0}}: Send`
[INFO] [stdout]    = note: and so on...
[INFO] [stdout]    = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]    = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`socks4`)
[INFO] [stdout]    = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]    = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]   --> tests/tunnel.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     tokio::spawn(run_local(local_config));
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: which requires `{async fn body of local::run()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@run_local::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<shadowsocks_service::local::Server, std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of shadowsocks_service::local::Server::new()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@shadowsocks_service::local::Server::new::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<OnlineConfigService, std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigServiceBuilder::build()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigServiceBuilder::build::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigService::run_once()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigService::run_once::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `tokio::time::Timeout<impl Future<Output = std::result::Result<(), std::io::Error>>>: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigService::run_once_impl()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigService::run_once_impl::{closure#0}}: Send`
[INFO] [stdout]    = note: and so on...
[INFO] [stdout]    = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]    = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`tunnel`)
[INFO] [stdout]    = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]    = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]   --> tests/socks5.rs:76:9
[INFO] [stdout]    |
[INFO] [stdout] 76 |         tokio::spawn(run_local(client_cfg));
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: which requires `{async fn body of local::run()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@run_local::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<shadowsocks_service::local::Server, std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of shadowsocks_service::local::Server::new()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@shadowsocks_service::local::Server::new::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<OnlineConfigService, std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigServiceBuilder::build()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigServiceBuilder::build::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigService::run_once()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigService::run_once::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `tokio::time::Timeout<impl Future<Output = std::result::Result<(), std::io::Error>>>: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = std::result::Result<(), std::io::Error>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of OnlineConfigService::run_once_impl()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@OnlineConfigService::run_once_impl::{closure#0}}: Send`
[INFO] [stdout]    = note: and so on...
[INFO] [stdout]    = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]    = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`socks5`)
[INFO] [stdout]    = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]    = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `sealed`
[INFO] [stderr]   --> crates/shadowsocks/Cargo.toml:81:1
[INFO] [stderr]    |
[INFO] [stderr] 81 | sealed = "0.7"
[INFO] [stderr]    | ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `sealed`
[INFO] [stderr] warning: `shadowsocks` (manifest) generated 1 warning
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 21s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nix v0.31.3
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 6`
[INFO] running `Command { std: "docker" "inspect" "5de2ba48c9033f5396f41892fbc76cf6b5f0a322d76676de3c48310ddb49e9c8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5de2ba48c9033f5396f41892fbc76cf6b5f0a322d76676de3c48310ddb49e9c8", kill_on_drop: false }`
[INFO] [stdout] 5de2ba48c9033f5396f41892fbc76cf6b5f0a322d76676de3c48310ddb49e9c8
